// S : tags libc c // S : expect --result valid // S : cc -o test.bc -D_PDCLIB_BUILD -DTEST $file // S : verify -o nofail:malloc test.bc #include #include #include "_PDCLIB_test.h" int main( void ) { char aBcdE[] = "aBcdE"; char cmpabcde[] = "abcde\0f"; char cmpabcd_[] = "abcde\xfc"; char empty[] = ""; char x[] = "x"; TESTCASE( strncasecmp( abcde, cmpabcde, 5 ) == 0 ); TESTCASE( strncasecmp( aBcdE, cmpabcde, 5 ) == 0 ); TESTCASE( strncasecmp( abcde, cmpabcde, 10 ) == 0 ); TESTCASE( strncasecmp( aBcdE, cmpabcde, 10 ) == 0 ); TESTCASE( strncasecmp( abcde, abcdx, 5 ) < 0 ); TESTCASE( strncasecmp( aBcdE, abcdx, 5 ) < 0 ); TESTCASE( strncasecmp( abcdx, abcde, 5 ) > 0 ); TESTCASE( strncasecmp( abcdx, aBcdE, 5 ) > 0 ); TESTCASE( strncasecmp( empty, abcde, 5 ) < 0 ); TESTCASE( strncasecmp( empty, aBcdE, 5 ) < 0 ); TESTCASE( strncasecmp( abcde, empty, 5 ) > 0 ); TESTCASE( strncasecmp( aBcdE, empty, 5 ) > 0 ); TESTCASE( strncasecmp( abcde, abcdx, 4 ) == 0 ); TESTCASE( strncasecmp( aBcdE, abcdx, 4 ) == 0 ); TESTCASE( strncasecmp( abcde, x, 0 ) == 0 ); TESTCASE( strncasecmp( aBcdE, x, 0 ) == 0 ); TESTCASE( strncasecmp( abcde, x, 1 ) < 0 ); TESTCASE( strncasecmp( aBcdE, x, 1 ) < 0 ); TESTCASE( strncasecmp( abcde, cmpabcd_, 10 ) < 0 ); TESTCASE( strncasecmp( aBcdE, cmpabcd_, 10 ) < 0 ); return TEST_RESULTS; }