/* Copyright (C) 2008 Andreas Baumann This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ #include "port/sys.h" #define TEST_STRNCASECMP #include "port/string.c" /* for strcasecmp */ #include /* for EXIT_SUCCESS, EXIT_FAILURE */ int main( void ) { const char *s1 = "test"; const char *s2 = "TESTING"; const char *s3 = "tes"; const char *s4 = "sest"; const char *s5 = "uest"; if( strncasecmp( s1, s1, 4 ) != 0 ) return EXIT_FAILURE; if( strncasecmp( s1, s2, 4 ) != 0 ) return EXIT_FAILURE; if( strncasecmp( s1, s2, 3 ) != 0 ) return EXIT_FAILURE; if( strncasecmp( s1, s3, 3 ) != 0 ) return EXIT_FAILURE; if( strncasecmp( s1, s4, 3 ) <= 0 ) return EXIT_FAILURE; if( strncasecmp( s1, s5, 3 ) >= 0 ) return EXIT_FAILURE; if( wolf_port_strncasecmp( s1, s1, 4 ) != 0 ) return EXIT_FAILURE; if( wolf_port_strncasecmp( s1, s2, 4 ) != 0 ) return EXIT_FAILURE; if( wolf_port_strncasecmp( s1, s2, 3 ) != 0 ) return EXIT_FAILURE; if( wolf_port_strncasecmp( s1, s3, 3 ) != 0 ) return EXIT_FAILURE; if( wolf_port_strncasecmp( s1, s4, 3 ) <= 0 ) return EXIT_FAILURE; if( wolf_port_strncasecmp( s1, s5, 3 ) >= 0 ) return EXIT_FAILURE; return EXIT_SUCCESS; }