Fix memory leaks in tests case.c and misc.c (#189)
* Add: tests to CMakeLists.txt * Disable compilation of charwidth, graphemetest and normtest because of missing getline * Refactoring: UTF8PROC_ENABLE_TESTING default Off, move tests that don't compile on windows to NOT MSVC section, add testing to appveyor.yml * Add: testing to travis * Changed: flag to WIN32 because MinGW has the same problem as MSVC * Commented out graphemetest and normtest because they fail. * Re-added: graphemetest and normtest added missing data to the path of the text files. * Fix: last commit was party wrong normtest failed. * * Commented out graphemetest and normtest because they fail, because in CMakeLists is missing building of data. * Add: mingw_static, mingw_shared, msvc_shared, msvc_static to ignore list * Add: prefix utf8proc. to tests * Fix: memory leaks in tests case.c and misc.c forgot to call free after calling utf8proc_NFKC_Casefold Co-authored-by: Andreas-Schniertshauer <Andreas-Schniertshauer@users.noreply.github.com>
This commit is contained in:
parent
ffba678bf4
commit
e51f416e0c
@ -63,10 +63,13 @@ int main(int argc, char **argv)
|
|||||||
"incorrect 0x00df/0x1e9e case conversions");
|
"incorrect 0x00df/0x1e9e case conversions");
|
||||||
utf8proc_uint8_t str_00df[] = {0xc3, 0x9f, 0x00};
|
utf8proc_uint8_t str_00df[] = {0xc3, 0x9f, 0x00};
|
||||||
utf8proc_uint8_t str_1e9e[] = {0xe1, 0xba, 0x9e, 0x00};
|
utf8proc_uint8_t str_1e9e[] = {0xe1, 0xba, 0x9e, 0x00};
|
||||||
check(!strcmp((char*)utf8proc_NFKC_Casefold(str_00df), "ss") &&
|
utf8proc_uint8_t *s1 = utf8proc_NFKC_Casefold(str_00df);
|
||||||
!strcmp((char*)utf8proc_NFKC_Casefold(str_1e9e), "ss"),
|
utf8proc_uint8_t *s2 = utf8proc_NFKC_Casefold(str_1e9e);
|
||||||
|
check(!strcmp((char*)s1, "ss") &&
|
||||||
|
!strcmp((char*)s2, "ss"),
|
||||||
"incorrect 0x00df/0x1e9e casefold normalization");
|
"incorrect 0x00df/0x1e9e casefold normalization");
|
||||||
|
free(s1);
|
||||||
|
free(s2);
|
||||||
printf("More up-to-date than OS unicode tables for %d tests.\n", better);
|
printf("More up-to-date than OS unicode tables for %d tests.\n", better);
|
||||||
printf("utf8proc case conversion tests SUCCEEDED.\n");
|
printf("utf8proc case conversion tests SUCCEEDED.\n");
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
@ -35,6 +35,7 @@ static void issue102(void) /* #128 */
|
|||||||
printf("NFKC_Casefold \"%s\" -> \"%s\" vs. \"%s\"\n", (char*)input, (char*)output, (char*)correct);
|
printf("NFKC_Casefold \"%s\" -> \"%s\" vs. \"%s\"\n", (char*)input, (char*)output, (char*)correct);
|
||||||
check(strlen((char*) output) == 7, "incorrect NFKC_Casefold length");
|
check(strlen((char*) output) == 7, "incorrect NFKC_Casefold length");
|
||||||
check(!memcmp(correct, output, 8), "incorrect NFKC_Casefold data");
|
check(!memcmp(correct, output, 8), "incorrect NFKC_Casefold data");
|
||||||
|
free(output);
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(void)
|
int main(void)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user