int compare_string(Char const *begin,Right const &r) { Char const *end = begin; while(*end!=0) end++; return compare_text(begin,end,r.begin(),r.end()); }
int compare_string(Left const &l,Char const *begin) { Char const *end = begin; while(*end!=0) end++; return compare_text(l.begin(),l.end(),begin,end); }
void CTestsTest::c_test_keys_in_text() { int num_of_strings=3, num_of_keys=2, temp, i; temp=num_of_strings; char strings[3][6] = {"ololo", "lol", "o"}; char **a_strings; a_strings = (char**)malloc(temp*sizeof(char*)); for(num_of_strings=0; num_of_strings<temp; num_of_strings++) { a_strings[num_of_strings] = (char*)malloc(strlen(strings[num_of_strings])); a_strings[num_of_strings] = strings[num_of_strings]; } temp=num_of_keys; char keys[2][2] = {"o", "l"}; char **a_keys; a_keys = (char**)malloc(temp*sizeof(char*)); for(num_of_keys=0; num_of_keys<temp; num_of_keys++) { a_keys[num_of_keys] = (char*)malloc(strlen(keys[num_of_keys])); a_keys[num_of_keys] = keys[num_of_keys]; } int *result; result = (int*)malloc(num_of_keys*sizeof(int)); c_calc_keys_in_text(a_strings, a_keys, num_of_strings, num_of_keys, result); int result_r[2] = {5, 4}; for (i=0; i<num_of_keys; i++) QCOMPARE(compare_text(result, result_r), 0); free(result); for(i=0; i<num_of_strings; i++) { free(a_strings[i]); } free(a_strings); for(i=0; i<num_of_keys; i++) { free(a_keys[i]); } free(a_keys); }
int compare_text(Left const &l,Right const &r) { return compare_text(l.begin(),l.end(),r.begin(),r.end()); }