X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;ds=sidebyside;f=functions%2Fstring%2Fstrncmp.c;h=0ba2bee63a7a86a5d7903cb70133cdf58e425708;hb=12e17136786afb1775c9dc946cbe41f5e230c24a;hp=f64984ebc1b9ec4f5fc3a2e396560029124e6b89;hpb=41afb7a0762978ee57d1a8d6223e82e73f2acb9b;p=pdclib.old diff --git a/functions/string/strncmp.c b/functions/string/strncmp.c index f64984e..0ba2bee 100644 --- a/functions/string/strncmp.c +++ b/functions/string/strncmp.c @@ -10,6 +10,8 @@ #include +#ifndef REGTEST + int strncmp( const char * s1, const char * s2, size_t n ) { while ( n && ( *s1 == *s2 ) ) @@ -27,3 +29,25 @@ int strncmp( const char * s1, const char * s2, size_t n ) return ( *s1 - *s2 ); } } + +#endif + +#ifdef TEST +#include <_PDCLIB_test.h> + +int main( void ) +{ + char cmpabcde[] = "abcde"; + char empty[] = ""; + char x[] = "x"; + TESTCASE( strncmp( abcde, cmpabcde, 5 ) == 0 ); + TESTCASE( strncmp( abcde, abcdx, 5 ) < 0 ); + TESTCASE( strncmp( abcdx, abcde, 5 ) > 0 ); + TESTCASE( strncmp( empty, abcde, 5 ) < 0 ); + TESTCASE( strncmp( abcde, empty, 5 ) > 0 ); + TESTCASE( strncmp( abcde, abcdx, 4 ) == 0 ); + TESTCASE( strncmp( abcde, x, 0 ) == 0 ); + TESTCASE( strncmp( abcde, x, 1 ) < 0 ); + return TEST_RESULTS; +} +#endif