]> pd.if.org Git - pdclib/blobdiff - functions/string/strncmp.c
Added #ifdef to allow regression against system lib.
[pdclib] / functions / string / strncmp.c
index f64984ebc1b9ec4f5fc3a2e396560029124e6b89..286d41ed6baedaf951428f918828eb9e548a9bdd 100644 (file)
@@ -10,6 +10,8 @@
 
 #include <string.h>
 
+#ifndef REGTEST
+
 int strncmp( const char * s1, const char * s2, size_t n )
 {
     while ( n && ( *s1 == *s2 ) )
@@ -27,3 +29,26 @@ int strncmp( const char * s1, const char * s2, size_t n )
         return ( *s1 - *s2 );
     }
 }
+
+#endif
+
+#ifdef TEST
+#include <_PDCLIB_test.h>
+
+int main()
+{
+    char cmpabcde[] = "abcde";
+    char empty[] = "";
+    char x[] = "x";
+    BEGIN_TESTS;
+    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