public void VerifyHistoryData(List <string[]> incentivehistorydata, string category) { int length; string[] actions = { "ActionCategoryInternalName", "BadgeName", "PointsAwarded", "InsertDate", "IncentiveSymbol" }; List <string[]> result = ApiKeywords.ParseIncentiveHistoryResponse(jsonresponse, "Value", actions); Console.WriteLine("Result Count : " + result.Count); Console.WriteLine("Eligible Activites Count : " + incentivehistorydata.Count); for (int i = 0; i < result.Count; i++) { foreach (string s in result.ElementAt(i)) { Console.Write("Value : " + s + "\t"); } Console.WriteLine(); } for (int i = 0; i < incentivehistorydata.Count; i++) { Common cm = new Common(); incentivehistorydata.ElementAt(i)[5] = cm.GetCurrentDate("M/dd/yyyy"); } int explistindex = 0; if (result.Count() != 0 && incentivehistorydata.Count() != 0) { length = result.Count(); for (int i = 0; i < length; i++) { string actioncategoryinternalname = result.ElementAt(i)[0].ToLower().Trim(); if (category.ToLower().Equals(actioncategoryinternalname)) { int expstartindex = 2; string elementname = incentivehistorydata.ElementAt(explistindex)[2]; for (int j = 0; j < result.ElementAt(i).Count(); j++) { string expectedtext = incentivehistorydata.ElementAt(explistindex)[expstartindex]; string actualtext = result.ElementAt(i)[j]; expstartindex++; Console.WriteLine("Element Name : " + elementname + "\tExpectedText : " + expectedtext + "\tActualText : " + actualtext); softAssertions.Add(elementname, expectedtext, actualtext, "contains"); } explistindex++; } } } else { softAssertions.Add("Activities count doesn't match", incentivehistorydata.Count(), result.Count(), "equals"); } }