From 55cf35957bf8dec0a489ba758c02c83303a5eb50 Mon Sep 17 00:00:00 2001 From: solar Date: Mon, 19 Jul 2010 11:36:38 +0000 Subject: [PATCH] Cleaned up the testing a bit. --- functions/_PDCLIB/assert.c | 2 +- functions/_PDCLIB/print.c | 2 +- functions/stdio/clearerr.c | 6 +- functions/stdio/fclose.c | 14 +- functions/stdio/fopen.c | 10 +- functions/stdio/fprintf.c | 3 +- functions/stdio/fputs.c | 1 - functions/stdio/fread.c | 6 +- functions/stdio/ftell.c | 6 +- functions/stdio/fwrite.c | 6 +- functions/stdio/rename.c | 46 +++--- functions/stdio/setbuf.c | 11 +- functions/stdio/setvbuf.c | 15 +- functions/stdio/vfprintf.c | 3 +- functions/stdio/vprintf.c | 6 +- testing/_PDCLIB_test.h | 18 +-- testing/fprintf_reftest.incl | 3 +- testing/fscan_sources.incl | 4 +- testing/scan_test.h | 3 - testing/scanf_testcases.incl | 280 +++++++++++++++++------------------ testing/sscan_sources.incl | 4 +- 21 files changed, 221 insertions(+), 228 deletions(-) diff --git a/functions/_PDCLIB/assert.c b/functions/_PDCLIB/assert.c index ed56fc6..fbee634 100644 --- a/functions/_PDCLIB/assert.c +++ b/functions/_PDCLIB/assert.c @@ -45,7 +45,7 @@ static int UNEXPECTED_ABORT = 1; static void aborthandler( int sig ) { TESTCASE( ! EXPECTED_ABORT ); - exit( (signed int)rc ); + exit( (signed int)TEST_RESULTS ); } #define NDEBUG diff --git a/functions/_PDCLIB/print.c b/functions/_PDCLIB/print.c index 869377d..7629714 100644 --- a/functions/_PDCLIB/print.c +++ b/functions/_PDCLIB/print.c @@ -536,7 +536,7 @@ static int testprintf( char * buffer, size_t n, const char * format, ... ) if ( *(_PDCLIB_print( format, &status )) != '\0' ) { printf( "_PDCLIB_print() did not return end-of-specifier on '%s'.\n", format ); - ++rc; + ++TEST_RESULTS; } va_end( status.arg ); return status.i; diff --git a/functions/stdio/clearerr.c b/functions/stdio/clearerr.c index 922f6ab..810e62d 100644 --- a/functions/stdio/clearerr.c +++ b/functions/stdio/clearerr.c @@ -23,8 +23,8 @@ void clearerr( struct _PDCLIB_file_t * stream ) int main( void ) { FILE * fh; - remove( "testfile" ); - TESTCASE( ( fh = fopen( "testfile", "w+" ) ) != NULL ); + remove( "testing/testfile" ); + TESTCASE( ( fh = fopen( "testing/testfile", "w+" ) ) != NULL ); /* Flags should be clear */ TESTCASE( ! ferror( fh ) ); TESTCASE( ! feof( fh ) ); @@ -46,7 +46,7 @@ int main( void ) TESTCASE( ! ferror( fh ) ); TESTCASE( ! feof( fh ) ); TESTCASE( fclose( fh ) == 0 ); - remove( "testfile" ); + remove( "testing/testfile" ); return TEST_RESULTS; } diff --git a/functions/stdio/fclose.c b/functions/stdio/fclose.c index 0e822eb..2b68694 100644 --- a/functions/stdio/fclose.c +++ b/functions/stdio/fclose.c @@ -70,23 +70,23 @@ int main( void ) #ifndef REGTEST struct _PDCLIB_file_t * file1; struct _PDCLIB_file_t * file2; - remove( "testfile1" ); - remove( "testfile2" ); + remove( "testing/testfile1" ); + remove( "testing/testfile2" ); TESTCASE( _PDCLIB_filelist == stdin ); - TESTCASE( ( file1 = fopen( "testfile1", "w" ) ) != NULL ); + TESTCASE( ( file1 = fopen( "testing/testfile1", "w" ) ) != NULL ); TESTCASE( _PDCLIB_filelist == file1 ); - TESTCASE( ( file2 = fopen( "testfile2", "w" ) ) != NULL ); + TESTCASE( ( file2 = fopen( "testing/testfile2", "w" ) ) != NULL ); TESTCASE( _PDCLIB_filelist == file2 ); TESTCASE( fclose( file2 ) == 0 ); TESTCASE( _PDCLIB_filelist == file1 ); - TESTCASE( ( file2 = fopen( "testfile1", "w" ) ) != NULL ); + TESTCASE( ( file2 = fopen( "testing/testfile1", "w" ) ) != NULL ); TESTCASE( _PDCLIB_filelist == file2 ); TESTCASE( fclose( file1 ) == 0 ); TESTCASE( _PDCLIB_filelist == file2 ); TESTCASE( fclose( file2 ) == 0 ); TESTCASE( _PDCLIB_filelist == stdin ); - remove( "testfile1" ); - remove( "testfile2" ); + remove( "testing/testfile1" ); + remove( "testing/testfile2" ); #else puts( " NOTEST fclose() test driver is PDCLib-specific." ); #endif diff --git a/functions/stdio/fopen.c b/functions/stdio/fopen.c index 93e2719..bc9fab4 100644 --- a/functions/stdio/fopen.c +++ b/functions/stdio/fopen.c @@ -83,16 +83,16 @@ int main( void ) my system is at once less forgiving (segfaults on mode NULL) and more forgiving (accepts undefined modes). */ - remove( "testfile" ); + remove( "testing/testfile" ); TESTCASE_NOREG( fopen( NULL, NULL ) == NULL ); TESTCASE( fopen( NULL, "w" ) == NULL ); TESTCASE_NOREG( fopen( "", NULL ) == NULL ); TESTCASE( fopen( "", "w" ) == NULL ); TESTCASE( fopen( "foo", "" ) == NULL ); - TESTCASE_NOREG( fopen( "testfile", "wq" ) == NULL ); /* Undefined mode */ - TESTCASE_NOREG( fopen( "testfile", "wr" ) == NULL ); /* Undefined mode */ - TESTCASE( fopen( "testfile", "w" ) != NULL ); - remove( "testfile" ); + TESTCASE_NOREG( fopen( "testing/testfile", "wq" ) == NULL ); /* Undefined mode */ + TESTCASE_NOREG( fopen( "testing/testfile", "wr" ) == NULL ); /* Undefined mode */ + TESTCASE( fopen( "testing/testfile", "w" ) != NULL ); + remove( "testing/testfile" ); return TEST_RESULTS; } diff --git a/functions/stdio/fprintf.c b/functions/stdio/fprintf.c index 31e3f57..da70041 100644 --- a/functions/stdio/fprintf.c +++ b/functions/stdio/fprintf.c @@ -33,10 +33,11 @@ int fprintf( struct _PDCLIB_file_t * _PDCLIB_restrict stream, const char * _PDCL int main( void ) { FILE * buffer; - TESTCASE( ( buffer = fopen( "testfile", "wb" ) ) != NULL ); + TESTCASE( ( buffer = fopen( "testing/testfile", "wb" ) ) != NULL ); #include "printf_testcases.incl" TESTCASE( fclose( buffer ) == 0 ); #include "fprintf_reftest.incl" + TESTCASE( remove( "testing/testfile" ) == 0 ); return TEST_RESULTS; } diff --git a/functions/stdio/fputs.c b/functions/stdio/fputs.c index 9a98089..1df0ebf 100644 --- a/functions/stdio/fputs.c +++ b/functions/stdio/fputs.c @@ -51,7 +51,6 @@ int fputs( const char * _PDCLIB_restrict s, struct _PDCLIB_file_t * _PDCLIB_rest int main( void ) { - char const * const testfile = "testfile"; char const * const message = "SUCCESS testing fputs()"; FILE * fh; remove( testfile ); diff --git a/functions/stdio/fread.c b/functions/stdio/fread.c index b77b5dd..c457d48 100644 --- a/functions/stdio/fread.c +++ b/functions/stdio/fread.c @@ -48,12 +48,12 @@ size_t fread( void * _PDCLIB_restrict ptr, size_t size, size_t nmemb, struct _PD int main( void ) { FILE * fh; - remove( "testfile" ); - TESTCASE( ( fh = fopen( "testfile", "w" ) ) != NULL ); + remove( testfile ); + TESTCASE( ( fh = fopen( testfile, "w" ) ) != NULL ); TESTCASE( fwrite( "SUCCESS testing fwrite()\n", 1, 25, fh ) == 25 ); TESTCASE( fclose( fh ) == 0 ); /* TODO: Add readback test. */ - TESTCASE( remove( "testfile" ) == 0 ); + TESTCASE( remove( testfile ) == 0 ); return TEST_RESULTS; } diff --git a/functions/stdio/ftell.c b/functions/stdio/ftell.c index db9eb3d..0bf42f5 100644 --- a/functions/stdio/ftell.c +++ b/functions/stdio/ftell.c @@ -48,8 +48,8 @@ int main( void ) */ char * buffer = (char*)malloc( 4 ); FILE * fh; - remove( "testfile" ); - TESTCASE( ( fh = fopen( "testfile", "w+" ) ) != NULL ); + remove( testfile ); + TESTCASE( ( fh = fopen( testfile, "w+" ) ) != NULL ); TESTCASE( setvbuf( fh, buffer, _IOLBF, 4 ) == 0 ); TESTCASE( fputc( '1', fh ) == '1' ); TESTCASE( fputc( '2', fh ) == '2' ); @@ -77,7 +77,7 @@ int main( void ) TESTCASE( fgetc( fh ) == '1' ); TESTCASE( fclose( fh ) == 0 ); /* TODO: t.b.c. */ - remove( "testfile" ); + remove( testfile ); return TEST_RESULTS; } diff --git a/functions/stdio/fwrite.c b/functions/stdio/fwrite.c index 8e5db3d..3c40186 100644 --- a/functions/stdio/fwrite.c +++ b/functions/stdio/fwrite.c @@ -88,12 +88,12 @@ size_t fwrite( const void * _PDCLIB_restrict ptr, size_t size, size_t nmemb, str int main( void ) { FILE * fh; - remove( "testfile" ); - TESTCASE( ( fh = fopen( "testfile", "w" ) ) != NULL ); + remove( testfile ); + TESTCASE( ( fh = fopen( testfile, "w" ) ) != NULL ); TESTCASE( fwrite( "SUCCESS testing fwrite()\n", 1, 25, fh ) == 25 ); TESTCASE( fclose( fh ) == 0 ); /* TODO: Add readback test. */ - TESTCASE( remove( "testfile" ) == 0 ); + TESTCASE( remove( testfile ) == 0 ); return TEST_RESULTS; } diff --git a/functions/stdio/rename.c b/functions/stdio/rename.c index 2a34fe6..409005f 100644 --- a/functions/stdio/rename.c +++ b/functions/stdio/rename.c @@ -39,47 +39,45 @@ int rename( const char * old, const char * new ) int main( void ) { - char filename1[] = "touch testfile1"; - char filename2[] = "testfile2"; FILE * file; - remove( filename1 + 6 ); - remove( filename2 ); + remove( testfile1 ); + remove( testfile2 ); /* make sure that neither file exists */ - TESTCASE( fopen( filename1 + 6, "r" ) == NULL ); - TESTCASE( fopen( filename2, "r" ) == NULL ); + TESTCASE( fopen( testfile1, "r" ) == NULL ); + TESTCASE( fopen( testfile2, "r" ) == NULL ); /* rename file 1 to file 2 - expected to fail */ - TESTCASE( rename( filename1 + 6, filename2 ) == -1 ); + TESTCASE( rename( testfile1, testfile2 ) == -1 ); /* create file 1 */ - system( filename1 ); + TESTCASE( ( file = fopen( testfile1, "w" ) ) != NULL ); + TESTCASE( fputs( "x", file ) != EOF ); + TESTCASE( fclose( file ) == 0 ); /* check that file 1 exists */ - TESTCASE( ( file = fopen( filename1 + 6, "r" ) ) != NULL ); + TESTCASE( ( file = fopen( testfile1, "r" ) ) != NULL ); TESTCASE( fclose( file ) == 0 ); /* rename file 1 to file 2 */ - TESTCASE( rename( filename1 + 6, filename2 ) == 0 ); + TESTCASE( rename( testfile1, testfile2 ) == 0 ); /* check that file 2 exists, file 1 does not */ - TESTCASE( fopen( filename1 + 6, "r" ) == NULL ); - TESTCASE( ( file = fopen( filename2, "r" ) ) != NULL ); + TESTCASE( fopen( testfile1, "r" ) == NULL ); + TESTCASE( ( file = fopen( testfile2, "r" ) ) != NULL ); TESTCASE( fclose( file ) == 0 ); /* create another file 1 */ - system( filename1 ); + TESTCASE( ( file = fopen( testfile1, "w" ) ) != NULL ); + TESTCASE( fputs( "x", file ) != EOF ); + TESTCASE( fclose( file ) == 0 ); /* check that file 1 exists */ - TESTCASE( ( file = fopen( filename1 + 6, "r" ) ) != NULL ); + TESTCASE( ( file = fopen( testfile1, "r" ) ) != NULL ); TESTCASE( fclose( file ) == 0 ); /* rename file 1 to file 2 - expected to fail, see comment in _PDCLIB_rename() itself. */ -#ifndef REGTEST - TESTCASE( rename( filename1 + 6, filename2 ) == -1 ); -#else - /* glibc rename() overwrites existing destination file. */ - TESTCASE( rename( filename1 + 6, filename2 ) == 0 ); -#endif + /* NOREG as glibc overwrites existing destination file. */ + TESTCASE_NOREG( rename( testfile1, testfile2 ) == -1 ); /* remove both files */ - remove( filename1 + 6 ); - remove( filename2 ); + remove( testfile1 ); + remove( testfile2 ); /* check that they're gone */ - TESTCASE( fopen( filename1 + 6, "r" ) == NULL ); - TESTCASE( fopen( filename2, "r" ) == NULL ); + TESTCASE( fopen( testfile1, "r" ) == NULL ); + TESTCASE( fopen( testfile2, "r" ) == NULL ); return TEST_RESULTS; } diff --git a/functions/stdio/setbuf.c b/functions/stdio/setbuf.c index a68ea27..46db8e3 100644 --- a/functions/stdio/setbuf.c +++ b/functions/stdio/setbuf.c @@ -32,24 +32,23 @@ int main( void ) { /* TODO: Extend testing once setvbuf() is finished. */ #ifndef REGTEST - char const * const filename = "testfile"; char buffer[ BUFSIZ + 1 ]; FILE * fh; - remove( filename ); + remove( testfile ); /* full buffered */ - TESTCASE( ( fh = fopen( filename, "w" ) ) != NULL ); + TESTCASE( ( fh = fopen( testfile, "w" ) ) != NULL ); setbuf( fh, buffer ); TESTCASE( fh->buffer == buffer ); TESTCASE( fh->bufsize == BUFSIZ ); TESTCASE( ( fh->status & ( _IOFBF | _IONBF | _IOLBF ) ) == _IOFBF ); TESTCASE( fclose( fh ) == 0 ); - TESTCASE( remove( filename ) == 0 ); + TESTCASE( remove( testfile ) == 0 ); /* not buffered */ - TESTCASE( ( fh = fopen( filename, "w" ) ) != NULL ); + TESTCASE( ( fh = fopen( testfile, "w" ) ) != NULL ); setbuf( fh, NULL ); TESTCASE( ( fh->status & ( _IOFBF | _IONBF | _IOLBF ) ) == _IONBF ); TESTCASE( fclose( fh ) == 0 ); - TESTCASE( remove( filename ) == 0 ); + TESTCASE( remove( testfile ) == 0 ); #else puts( " NOTEST setbuf() test driver is PDCLib-specific." ); #endif diff --git a/functions/stdio/setvbuf.c b/functions/stdio/setvbuf.c index b9d97a0..2c33338 100644 --- a/functions/stdio/setvbuf.c +++ b/functions/stdio/setvbuf.c @@ -80,32 +80,31 @@ int setvbuf( struct _PDCLIB_file_t * _PDCLIB_restrict stream, char * _PDCLIB_res int main( void ) { #ifndef REGTEST - char const * const filename = "testfile"; char buffer[ BUFFERSIZE ]; FILE * fh; - remove( filename ); + remove( testfile ); /* full buffered, user-supplied buffer */ - TESTCASE( ( fh = fopen( filename, "w" ) ) != NULL ); + TESTCASE( ( fh = fopen( testfile, "w" ) ) != NULL ); TESTCASE( setvbuf( fh, buffer, _IOFBF, BUFFERSIZE ) == 0 ); TESTCASE( fh->buffer == buffer ); TESTCASE( fh->bufsize == BUFFERSIZE ); TESTCASE( ( fh->status & ( _IOFBF | _IONBF | _IOLBF ) ) == _IOFBF ); TESTCASE( fclose( fh ) == 0 ); - TESTCASE( remove( filename ) == 0 ); + TESTCASE( remove( testfile ) == 0 ); /* line buffered, lib-supplied buffer */ - TESTCASE( ( fh = fopen( filename, "w" ) ) != NULL ); + TESTCASE( ( fh = fopen( testfile, "w" ) ) != NULL ); TESTCASE( setvbuf( fh, NULL, _IOLBF, BUFFERSIZE ) == 0 ); TESTCASE( fh->buffer != NULL ); TESTCASE( fh->bufsize == BUFFERSIZE ); TESTCASE( ( fh->status & ( _IOFBF | _IONBF | _IOLBF ) ) == _IOLBF ); TESTCASE( fclose( fh ) == 0 ); - TESTCASE( remove( filename ) == 0 ); + TESTCASE( remove( testfile ) == 0 ); /* not buffered, user-supplied buffer */ - TESTCASE( ( fh = fopen( filename, "w" ) ) != NULL ); + TESTCASE( ( fh = fopen( testfile, "w" ) ) != NULL ); TESTCASE( setvbuf( fh, buffer, _IONBF, BUFFERSIZE ) == 0 ); TESTCASE( ( fh->status & ( _IOFBF | _IONBF | _IOLBF ) ) == _IONBF ); TESTCASE( fclose( fh ) == 0 ); - TESTCASE( remove( filename ) == 0 ); + TESTCASE( remove( testfile ) == 0 ); #else puts( " NOTEST setvbuf() test driver is PDCLib-specific." ); #endif diff --git a/functions/stdio/vfprintf.c b/functions/stdio/vfprintf.c index 6ff56ff..01c5df6 100644 --- a/functions/stdio/vfprintf.c +++ b/functions/stdio/vfprintf.c @@ -67,10 +67,11 @@ static int testprintf( FILE * stream, size_t n, const char * format, ... ) int main( void ) { FILE * buffer; - TESTCASE( ( buffer = fopen( "testfile", "wb" ) ) != NULL ); + TESTCASE( ( buffer = fopen( testfile, "wb" ) ) != NULL ); #include "printf_testcases.incl" TESTCASE( fclose( buffer ) == 0 ); #include "fprintf_reftest.incl" + TESTCASE( remove( testfile ) == 0 ); return TEST_RESULTS; } diff --git a/functions/stdio/vprintf.c b/functions/stdio/vprintf.c index 4af2f38..02d98cf 100644 --- a/functions/stdio/vprintf.c +++ b/functions/stdio/vprintf.c @@ -36,14 +36,14 @@ static int testprintf( FILE * stream, size_t n, const char * format, ... ) int main( void ) { FILE * buffer; - TESTCASE( ( buffer = freopen( "testfile", "wb", stdout ) ) != NULL ); + TESTCASE( ( buffer = freopen( testfile, "wb", stdout ) ) != NULL ); #include "printf_testcases.incl" TESTCASE( fclose( buffer ) == 0 ); char readbuffer[1000]; - TESTCASE( ( buffer = fopen( "testfile", "rb" ) ) != NULL ); + TESTCASE( ( buffer = fopen( testfile, "rb" ) ) != NULL ); TESTCASE( fread( readbuffer, 1, 1000, buffer ) == 985 ); TESTCASE( fclose( buffer ) == 0 ); - TESTCASE( remove( "testfile" ) == 0 ); + TESTCASE( remove( testfile ) == 0 ); TESTCASE( memcmp( readbuffer, "-1281270-32768327670-214748364821474836470-214748364821474836470-922337203685477580892233720368547758070255255655356553542949672954294967295429496729542949672951844674407370955161518446744073709551615FFFFFFFF0XFFFFFFFFffffffff0xffffffff37777777777037777777777%.0#o-2147483648+2147483647+042949672954294967295-2147483648 2147483647 042949672954294967295-21474836482147483647-21474836482147483647-2147483648 2147483647 -2147483648 2147483647-21474836482147483647-21474836482147483647-21474836482147483647 -2147483648 2147483647 -21474836482147483647-21474836482147483647-214748364802147483647-02147483648002147483647-21474836482147483647-21474836482147483647-21474836482147483647 -2147483648 2147483647 00000000002147483647ffffffff0xffffffff0xffffffff-2147483648-2147483648-21474836480xffffffff0xffffffff0xffffffff214748364721474836472147483647+2147483647+2147483647+2147483647+2147483647+2147483647+2147483647- 2147483647- 2147483647 % -2147483648xabcdef0xdeadbeef123456789", 985 ) == 0 ); return TEST_RESULTS; } diff --git a/testing/_PDCLIB_test.h b/testing/_PDCLIB_test.h index ad02b0f..7a7ff05 100644 --- a/testing/_PDCLIB_test.h +++ b/testing/_PDCLIB_test.h @@ -12,22 +12,22 @@ #include -char const abcde[] = "abcde"; -char const abcdx[] = "abcdx"; -char const * teststring = "1234567890\nABCDEFGHIJKLMNOPQRSTUVWXYZ\nabcdefghijklmnopqrstuvwxyz\n"; +static char const abcde[] = "abcde"; +static char const abcdx[] = "abcdx"; +static char const teststring[] = "1234567890\nABCDEFGHIJKLMNOPQRSTUVWXYZ\nabcdefghijklmnopqrstuvwxyz\n"; +static char const testfile[]="testing/testfile"; +static char const testfile1[]="testing/testfile1"; +static char const testfile2[]="testing/testfile2"; -int NO_TESTDRIVER = 0; +#define NO_TESTDRIVER 0 -static int rc = 0; +static int TEST_RESULTS = 0; #define TESTCASE( x ) if ( x ) {} \ - else { rc += 1; printf( "FAILED: " __FILE__ ", line %d - %s\n", __LINE__, #x ); } + else { TEST_RESULTS += 1; printf( "FAILED: " __FILE__ ", line %d - %s\n", __LINE__, #x ); } #ifndef REGTEST #define TESTCASE_NOREG( x ) TESTCASE( x ) #else #define TESTCASE_NOREG( x ) #endif - -#define TEST_RESULTS rc - diff --git a/testing/fprintf_reftest.incl b/testing/fprintf_reftest.incl index 05c74c2..e683ded 100644 --- a/testing/fprintf_reftest.incl +++ b/testing/fprintf_reftest.incl @@ -2,12 +2,11 @@ char readbuffer[2000]; char refbuffer[2000]; size_t readcounter; - TESTCASE( ( buffer = fopen( "testfile", "r" ) ) != NULL ); + TESTCASE( ( buffer = fopen( testfile, "r" ) ) != NULL ); readcounter = fread( readbuffer, 1, 2000, buffer ); TESTCASE( fclose( buffer ) == 0 ); TESTCASE( ( buffer = fopen( "testing/printf_reference.txt", "r" ) ) != NULL ); TESTCASE( fread( refbuffer, 1, 2000, buffer ) == readcounter ); TESTCASE( fclose( buffer ) == 0 ); TESTCASE( memcmp( readbuffer, refbuffer, readcounter ) == 0 ); - TESTCASE( remove( "testfile" ) == 0 ); } diff --git a/testing/fscan_sources.incl b/testing/fscan_sources.incl index a7dc18b..243a17d 100644 --- a/testing/fscan_sources.incl +++ b/testing/fscan_sources.incl @@ -50,12 +50,12 @@ int res = SCANFUNC( source, __VA_ARGS__ ); \ if ( res != result ) \ { \ - rc += 1; \ + TEST_RESULTS += 1; \ printf( "FAILED: " __FILE__ ", line %d - expected result %d, got %d\n", __LINE__, result, res ); \ } \ if ( n != count ) \ { \ - rc += 1; \ + TEST_RESULTS += 1; \ printf( "FAILED: " __FILE__ ", line %d - expected count %d, got %d\n", __LINE__, count, n ); \ } \ } while ( 0 ) diff --git a/testing/scan_test.h b/testing/scan_test.h index 9eae7c8..85d471b 100644 --- a/testing/scan_test.h +++ b/testing/scan_test.h @@ -9,8 +9,5 @@ #include #include -#define CHECK_TRUE( a ) TESTCASE( a != 0 ) -#define CHECK_FALSE( a ) TESTCASE( a == 0 ) -#define CHECK_EQUAL( a, b ) do { int x = a; int y = b; TESTCASE( x == y ); } while ( 0 ) #define CHECK_FEQUAL( a, b, T, F ) do { T x = a; T y = b; TESTCASE( x == y ); } while ( 0 ) diff --git a/testing/scanf_testcases.incl b/testing/scanf_testcases.incl index a32d0ca..b7d7646 100644 --- a/testing/scanf_testcases.incl +++ b/testing/scanf_testcases.incl @@ -48,7 +48,7 @@ #endif memset( buffer, '\177', 8 ); TESTSCAN( 1, count, general, 10, SCANPARMS( "%7c", buffer ) ); - CHECK_FALSE( memcmp( buffer, expected, 7 ) ); + TESTCASE( memcmp( buffer, expected, 7 ) == 0 ); } { // reading a char array of unspecified width when positioned at -1 value @@ -56,7 +56,7 @@ char buffer[ 2 ]; memset( buffer, '\177', 2 ); TESTSCAN( 1, 1, general, 19, SCANPARMS( "%c", buffer ) ); - CHECK_FALSE( memcmp( buffer, "\377\177", 2 ) ); + TESTCASE( memcmp( buffer, "\377\177", 2 ) == 0 ); } { // reading a char array of specified width 1 when positioned at (non-space) whitespace @@ -64,7 +64,7 @@ char buffer[ 2 ]; memset( buffer, '\177', 2 ); TESTSCAN( 1, 1, general, 32, SCANPARMS( "%1c", buffer ) ); - CHECK_FALSE( memcmp( buffer, "\011\177", 2 ) ); + TESTCASE( memcmp( buffer, "\011\177", 2 ) == 0 ); } { // reading a char array of specified width 2 when positioned at last char of file @@ -72,7 +72,7 @@ char buffer[ 2 ]; memset( buffer, '\177', 2 ); TESTSCAN( 1, 1, general, 39, SCANPARMS( "%2c", buffer ) ); - CHECK_FALSE( memcmp( buffer, "0\177", 2 ) ); + TESTCASE( memcmp( buffer, "0\177", 2 ) == 0 ); } { // reading a char array of specified width 1 when positioned at last char of file @@ -80,7 +80,7 @@ char buffer[ 2 ]; memset( buffer, '\177', 2 ); TESTSCAN( 1, 1, general, 39, SCANPARMS( "%1c", buffer ) ); - CHECK_FALSE( memcmp( buffer, "0\177", 2 ) ); + TESTCASE( memcmp( buffer, "0\177", 2 ) == 0 ); } { // reading a char array of specified width 1 when positioned at EOF @@ -88,7 +88,7 @@ char buffer[ 2 ]; memset( buffer, '\177', 2 ); TESTSCAN( -1, -1, general, 40, SCANPARMS( "%1c", buffer ) ); - CHECK_FALSE( memcmp( buffer, "\177\177", 2 ) ); + TESTCASE( memcmp( buffer, "\177\177", 2 ) == 0 ); } // ----------------------------------------------------------------------- @@ -98,52 +98,52 @@ // reading a whitespace-terminated integer int i; TESTSCAN( 1, 1, general, 20, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 2 ); + TESTCASE( i == 2 ); } { // reading a -1 terminated integer int i; TESTSCAN( 1, 1, general, 18, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 9 ); + TESTCASE( i == 9 ); } { // reading a EOF terminated integer int i = -1; TESTSCAN( 1, 1, general, 39, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // trying to read an integer when positioned at whitespace // should skip whitespaces int i = -1; TESTSCAN( 1, 3, general, 32, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 5 ); + TESTCASE( i == 5 ); } { // trying to read an integer when positioned at -1 value // should report matching failure int i = 0; TESTSCAN( 0, -1, general, 19, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // trying to read an integer when positioned at EOF // should report reading failure int i = 0; TESTSCAN( -1, -1, general, 40, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading a '-'-prefixed integer int i; TESTSCAN( 1, 2, general, 13, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, -5 ); + TESTCASE( i == -5 ); } { // reading a '+'-prefixed integer int i; TESTSCAN( 1, 2, general, 15, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 7 ); + TESTCASE( i == 7 ); } // decimal integer matches @@ -151,295 +151,295 @@ // reading 0, d signed char i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%hhd", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0, d signed char i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%hhd", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading +0, d signed char i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%hhd", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -128, d signed char i = -1; TESTSCAN( 1, 4, decimal, 6, SCANPARMS( "%hhd", &i ) ); - CHECK_EQUAL( i, -128 ); + TESTCASE( i == -128 ); } { // reading 127, d signed char i = -1; TESTSCAN( 1, 3, decimal, 12, SCANPARMS( "%hhd", &i ) ); - CHECK_EQUAL( i, 127 ); + TESTCASE( i == 127 ); } { // reading +127, d signed char i = -1; TESTSCAN( 1, 4, decimal, 11, SCANPARMS( "%hhd", &i ) ); - CHECK_EQUAL( i, 127 ); + TESTCASE( i == 127 ); } { // reading 0, u unsigned char i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%hhu", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0, u unsigned char i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%hhu", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading +0, u unsigned char i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%hhu", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 127, u unsigned char i = -1; TESTSCAN( 1, 3, decimal, 12, SCANPARMS( "%hhu", &i ) ); - CHECK_EQUAL( i, 127 ); + TESTCASE( i == 127 ); } { // reading +127, u unsigned char i = -1; TESTSCAN( 1, 4, decimal, 11, SCANPARMS( "%hhu", &i ) ); - CHECK_EQUAL( i, 127 ); + TESTCASE( i == 127 ); } { // reading 255, u unsigned char i = 0; TESTSCAN( 1, 3, decimal, 17, SCANPARMS( "%hhu", &i ) ); - CHECK_EQUAL( i, 255 ); + TESTCASE( i == 255 ); } { // reading +255, u unsigned char i = 0; TESTSCAN( 1, 4, decimal, 16, SCANPARMS( "%hhu", &i ) ); - CHECK_EQUAL( i, 255 ); + TESTCASE( i == 255 ); } { // reading 0, i signed char i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%hhi", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0, i signed char i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%hhi", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading +0, i signed char i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%hhi", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -128, i signed char i = -1; TESTSCAN( 1, 4, decimal, 6, SCANPARMS( "%hhi", &i ) ); - CHECK_EQUAL( i, -128 ); + TESTCASE( i == -128 ); } { // reading 127, i signed char i = -1; TESTSCAN( 1, 3, decimal, 12, SCANPARMS( "%hhi", &i ) ); - CHECK_EQUAL( i, 127 ); + TESTCASE( i == 127 ); } { // reading +127, i signed char i = -1; TESTSCAN( 1, 4, decimal, 11, SCANPARMS( "%hhi", &i ) ); - CHECK_EQUAL( i, 127 ); + TESTCASE( i == 127 ); } { // reading 0, d signed short i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%hd", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0, d signed short i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%hd", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading +0, d signed short i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%hd", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -32768, d signed short i = -1; TESTSCAN( 1, 6, decimal, 21, SCANPARMS( "%hd", &i ) ); - CHECK_EQUAL( i, -32768 ); + TESTCASE( i == -32768 ); } { // reading 32767, d signed short i = -1; TESTSCAN( 1, 5, decimal, 29, SCANPARMS( "%hd", &i ) ); - CHECK_EQUAL( i, 32767 ); + TESTCASE( i == 32767 ); } { // reading +32767, d signed short i = -1; TESTSCAN( 1, 6, decimal, 28, SCANPARMS( "%hd", &i ) ); - CHECK_EQUAL( i, 32767 ); + TESTCASE( i == 32767 ); } { // reading 0, u unsigned short i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%hu", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0, u unsigned short i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%hu", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading +0, u unsigned short i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%hu", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 32767, u unsigned short i = -1; TESTSCAN( 1, 5, decimal, 29, SCANPARMS( "%hu", &i ) ); - CHECK_EQUAL( i, 32767 ); + TESTCASE( i == 32767 ); } { // reading +32767, u unsigned short i = -1; TESTSCAN( 1, 6, decimal, 28, SCANPARMS( "%hu", &i ) ); - CHECK_EQUAL( i, 32767 ); + TESTCASE( i == 32767 ); } { // reading 65535, u unsigned short i = 0; TESTSCAN( 1, 5, decimal, 36, SCANPARMS( "%hu", &i ) ); - CHECK_EQUAL( i, 65535 ); + TESTCASE( i == 65535 ); } { // reading +65535, u unsigned short i = 0; TESTSCAN( 1, 6, decimal, 35, SCANPARMS( "%hu", &i ) ); - CHECK_EQUAL( i, 65535 ); + TESTCASE( i == 65535 ); } { // reading 0, i signed short i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%hi", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0, i signed short i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%hi", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading +0, i signed short i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%hi", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -32768, i signed short i = -1; TESTSCAN( 1, 6, decimal, 21, SCANPARMS( "%hi", &i ) ); - CHECK_EQUAL( i, -32768 ); + TESTCASE( i == -32768 ); } { // reading 32767, i signed short i = -1; TESTSCAN( 1, 5, decimal, 29, SCANPARMS( "%hi", &i ) ); - CHECK_EQUAL( i, 32767 ); + TESTCASE( i == 32767 ); } { // reading +32767, i signed short i = -1; TESTSCAN( 1, 6, decimal, 28, SCANPARMS( "%hi", &i ) ); - CHECK_EQUAL( i, 32767 ); + TESTCASE( i == 32767 ); } { // reading 0, d signed int i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0, d signed int i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading +0, d signed int i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -2147483648, d signed int i = -1; TESTSCAN( 1, 11, decimal, 42, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, -2147483648 ); + TESTCASE( i == -2147483648 ); } { // reading 2147483647, d signed int i = -1; TESTSCAN( 1, 10, decimal, 55, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 2147483647 ); + TESTCASE( i == 2147483647 ); } { // reading +2147483647, d signed int i = -1; TESTSCAN( 1, 11, decimal, 54, SCANPARMS( "%d", &i ) ); - CHECK_EQUAL( i, 2147483647 ); + TESTCASE( i == 2147483647 ); } { // reading 0, u unsigned int i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%u", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0, u unsigned int i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%u", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading +0, u unsigned int i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%u", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 2147483647, u unsigned int i = -1; TESTSCAN( 1, 10, decimal, 55, SCANPARMS( "%u", &i ) ); - CHECK_EQUAL( i, 2147483647 ); + TESTCASE( i == 2147483647 ); } { // reading +2147483647, u unsigned int i = -1; TESTSCAN( 1, 11, decimal, 54, SCANPARMS( "%u", &i ) ); - CHECK_EQUAL( i, 2147483647 ); + TESTCASE( i == 2147483647 ); } { // reading 4294967295, u @@ -457,103 +457,103 @@ // reading 0, i signed int i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%i", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0, i signed int i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%i", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading +0, i signed int i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%i", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -2147483648, i signed int i = -1; TESTSCAN( 1, 11, decimal, 42, SCANPARMS( "%i", &i ) ); - CHECK_EQUAL( i, -2147483648 ); + TESTCASE( i == -2147483648 ); } { // reading 2147483647, i signed int i = -1; TESTSCAN( 1, 10, decimal, 55, SCANPARMS( "%i", &i ) ); - CHECK_EQUAL( i, 2147483647 ); + TESTCASE( i == 2147483647 ); } { // reading +2147483647, i signed int i = -1; TESTSCAN( 1, 11, decimal, 54, SCANPARMS( "%i", &i ) ); - CHECK_EQUAL( i, 2147483647 ); + TESTCASE( i == 2147483647 ); } { // reading 0, d signed long i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%ld", &i ) ); - CHECK_EQUAL( i, 0l ); + TESTCASE( i == 0l ); } { // reading -0, d signed long i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%ld", &i ) ); - CHECK_EQUAL( i, 0l ); + TESTCASE( i == 0l ); } { // reading +0, d signed long i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%ld", &i ) ); - CHECK_EQUAL( i, 0l ); + TESTCASE( i == 0l ); } { // reading -2147483648, d signed long i = -1; TESTSCAN( 1, 11, decimal, 42, SCANPARMS( "%ld", &i ) ); - CHECK_EQUAL( i, -2147483648l ); + TESTCASE( i == -2147483648l ); } { // reading 2147483647, d signed long i = -1; TESTSCAN( 1, 10, decimal, 55, SCANPARMS( "%ld", &i ) ); - CHECK_EQUAL( i, 2147483647l ); + TESTCASE( i == 2147483647l ); } { // reading +2147483647, d signed long i = -1; TESTSCAN( 1, 11, decimal, 54, SCANPARMS( "%ld", &i ) ); - CHECK_EQUAL( i, 2147483647l ); + TESTCASE( i == 2147483647l ); } { // reading 0, u unsigned long i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%lu", &i ) ); - CHECK_EQUAL( i, 0ul ); + TESTCASE( i == 0ul ); } { // reading -0, u unsigned long i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%lu", &i ) ); - CHECK_EQUAL( i, 0ul ); + TESTCASE( i == 0ul ); } { // reading +0, u unsigned long i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%lu", &i ) ); - CHECK_EQUAL( i, 0ul ); + TESTCASE( i == 0ul ); } { // reading 2147483647, u unsigned long i = -1; TESTSCAN( 1, 10, decimal, 55, SCANPARMS( "%lu", &i ) ); - CHECK_EQUAL( i, 2147483647ul ); + TESTCASE( i == 2147483647ul ); } { // reading +2147483647, u unsigned long i = -1; TESTSCAN( 1, 11, decimal, 54, SCANPARMS( "%lu", &i ) ); - CHECK_EQUAL( i, 2147483647ul ); + TESTCASE( i == 2147483647ul ); } { // reading 4294967295, u @@ -571,62 +571,62 @@ // reading 0, i signed long i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%li", &i ) ); - CHECK_EQUAL( i, 0l ); + TESTCASE( i == 0l ); } { // reading -0, i signed long i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%li", &i ) ); - CHECK_EQUAL( i, 0l ); + TESTCASE( i == 0l ); } { // reading +0, i signed long i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%li", &i ) ); - CHECK_EQUAL( i, 0l ); + TESTCASE( i == 0l ); } { // reading -2147483648, i signed long i = -1; TESTSCAN( 1, 11, decimal, 42, SCANPARMS( "%li", &i ) ); - CHECK_EQUAL( i, -2147483648l ); + TESTCASE( i == -2147483648l ); } { // reading 2147483647, i signed long i = -1; TESTSCAN( 1, 10, decimal, 55, SCANPARMS( "%li", &i ) ); - CHECK_EQUAL( i, 2147483647l ); + TESTCASE( i == 2147483647l ); } { // reading +2147483647, i signed long i = -1; TESTSCAN( 1, 11, decimal, 54, SCANPARMS( "%li", &i ) ); - CHECK_EQUAL( i, 2147483647l ); + TESTCASE( i == 2147483647l ); } { // reading 0, d signed long long i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%lld", &i ) ); - CHECK_EQUAL( i, 0ll ); + TESTCASE( i == 0ll ); } { // reading -0, d signed long long i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%lld", &i ) ); - CHECK_EQUAL( i, 0ll ); + TESTCASE( i == 0ll ); } { // reading +0, d signed long long i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%lld", &i ) ); - CHECK_EQUAL( i, 0ll ); + TESTCASE( i == 0ll ); } { // reading -9223372036854775808, d signed long long i = -1; TESTSCAN( 1, 20, decimal, 78, SCANPARMS( "%lli", &i ) ); CHECK_FEQUAL( i, LLONG_MIN, signed long long, "%lli" ); // should be literal -9223372036854775808ll but GCC balks. - CHECK_EQUAL( i < 0ll, 1 ); + TESTCASE( i < 0ll ); } { // reading +9223372036854775807, d @@ -638,19 +638,19 @@ // reading 0, u unsigned long long i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%llu", &i ) ); - CHECK_EQUAL( i, 0ull ); + TESTCASE( i == 0ull ); } { // reading -0, u unsigned long long i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%llu", &i ) ); - CHECK_EQUAL( i, 0ull ); + TESTCASE( i == 0ull ); } { // reading +0, u unsigned long long i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%llu", &i ) ); - CHECK_EQUAL( i, 0ull ); + TESTCASE( i == 0ull ); } { // reading 9223372036854775807, u @@ -680,26 +680,26 @@ // reading 0, i signed long long i = -1; TESTSCAN( 1, 1, decimal, 1, SCANPARMS( "%lli", &i ) ); - CHECK_EQUAL( i, 0ll ); + TESTCASE( i == 0ll ); } { // reading -0, i signed long long i = -1; TESTSCAN( 1, 2, decimal, 0, SCANPARMS( "%lli", &i ) ); - CHECK_EQUAL( i, 0ll ); + TESTCASE( i == 0ll ); } { // reading +0, i signed long long i = -1; TESTSCAN( 1, 2, decimal, 3, SCANPARMS( "%lli", &i ) ); - CHECK_EQUAL( i, 0ll ); + TESTCASE( i == 0ll ); } { // reading -9223372036854775808, i signed long long i = -1; TESTSCAN( 1, 20, decimal, 78, SCANPARMS( "%lli", &i ) ); CHECK_FEQUAL( i, LLONG_MIN, signed long long, "%lli" ); // should be literal -9223372036854775808ll but GCC balks. - CHECK_EQUAL( i < 0ll, 1 ); + TESTCASE( i < 0ll ); } { // reading 9223372036854775807, i @@ -719,31 +719,31 @@ // reading 0, x unsigned char i = -1; TESTSCAN( 1, 1, hexadecimal, 3, SCANPARMS( "%hhx", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0x0, x unsigned char i = -1; TESTSCAN( 1, 4, hexadecimal, 0, SCANPARMS( "%hhx", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 0x000, x unsigned char i = -1; TESTSCAN( 1, 6, hexadecimal, 5, SCANPARMS( "%hhx", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 0x0, i signed char i = -1; TESTSCAN( 1, 4, hexadecimal, 0, SCANPARMS( "%hhi", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 7f, x unsigned char i = -1; TESTSCAN( 1, 2, hexadecimal, 15, SCANPARMS( "%hhx", &i ) ); - CHECK_EQUAL( i, 127 ); + TESTCASE( i == 127 ); } { // reading -0x7f, x @@ -761,49 +761,49 @@ // reading ff, x unsigned char i = -1; TESTSCAN( 1, 2, hexadecimal, 26, SCANPARMS( "%hhx", &i ) ); - CHECK_EQUAL( i, 0xff ); + TESTCASE( i == 0xff ); } { // reading 0xff, x unsigned char i = -1; TESTSCAN( 1, 4, hexadecimal, 24, SCANPARMS( "%hhx", &i ) ); - CHECK_EQUAL( i, 255 ); + TESTCASE( i == 255 ); } { // reading 0xff, i signed char i = 0; TESTSCAN( 1, 4, hexadecimal, 24, SCANPARMS( "%hhi", &i ) ); - CHECK_EQUAL( i, -1 ); + TESTCASE( i == -1 ); } { // reading 0, x unsigned short i = -1; TESTSCAN( 1, 1, hexadecimal, 3, SCANPARMS( "%hx", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0x0, x unsigned short i = -1; TESTSCAN( 1, 4, hexadecimal, 0, SCANPARMS( "%hx", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 0x000, x unsigned short i = -1; TESTSCAN( 1, 6, hexadecimal, 5, SCANPARMS( "%hx", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 0x0, i signed short i = -1; TESTSCAN( 1, 4, hexadecimal, 0, SCANPARMS( "%hi", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 7fff, x unsigned short i = -1; TESTSCAN( 1, 4, hexadecimal, 32, SCANPARMS( "%hx", &i ) ); - CHECK_EQUAL( i, 32767 ); + TESTCASE( i == 32767 ); } { // reading -0x7fff, x @@ -821,13 +821,13 @@ // reading ffff, x unsigned short i = -1; TESTSCAN( 1, 4, hexadecimal, 47, SCANPARMS( "%hx", &i ) ); - CHECK_EQUAL( i, 65535 ); + TESTCASE( i == 65535 ); } { // reading 0xffff, x unsigned short i = -1; TESTSCAN( 1, 6, hexadecimal, 45, SCANPARMS( "%hx", &i ) ); - CHECK_EQUAL( i, 65535 ); + TESTCASE( i == 65535 ); } { // reading 0xffff, i @@ -839,31 +839,31 @@ // reading 0, x unsigned int i = -1; TESTSCAN( 1, 1, hexadecimal, 3, SCANPARMS( "%x", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading -0x0, x unsigned int i = -1; TESTSCAN( 1, 4, hexadecimal, 0, SCANPARMS( "%x", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 0x000, x unsigned int i = -1; TESTSCAN( 1, 6, hexadecimal, 5, SCANPARMS( "%x", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 0x0, i signed int i = -1; TESTSCAN( 1, 4, hexadecimal, 0, SCANPARMS( "%i", &i ) ); - CHECK_EQUAL( i, 0 ); + TESTCASE( i == 0 ); } { // reading 7fffffff, x unsigned int i = -1; TESTSCAN( 1, 8, hexadecimal, 55, SCANPARMS( "%x", &i ) ); - CHECK_EQUAL( i, 2147483647 ); + TESTCASE( i == 2147483647 ); } { // reading -0x7fffffff, x @@ -895,31 +895,31 @@ // reading 0, o unsigned char i = -1; TESTSCAN( 1, 1, octal, 4, SCANPARMS( "%hho", &i ) ); - CHECK_EQUAL( i, 0u ); + TESTCASE( i == 0u ); } { // reading +0000, o unsigned char i = -1; TESTSCAN( 1, 5, octal, 0, SCANPARMS( "%hho", &i ) ); - CHECK_EQUAL( i, 0u ); + TESTCASE( i == 0u ); } { // reading -0000, o unsigned char i = -1; TESTSCAN( 1, 5, octal, 6, SCANPARMS( "%hho", &i ) ); - CHECK_EQUAL( i, 0u ); + TESTCASE( i == 0u ); } { // reading 0177, o unsigned char i = -1; TESTSCAN( 1, 4, octal, 13, SCANPARMS( "%hho", &i ) ); - CHECK_EQUAL( i, 127u ); + TESTCASE( i == 127u ); } { // reading +0177, o unsigned char i = -1; TESTSCAN( 1, 5, octal, 12, SCANPARMS( "%hho", &i ) ); - CHECK_EQUAL( i, 127u ); + TESTCASE( i == 127u ); } { // reading 0377, o @@ -943,13 +943,13 @@ // reading 077777, o unsigned short i = -1; TESTSCAN( 1, 6, octal, 31, SCANPARMS( "%ho", &i ) ); - CHECK_EQUAL( i, 32767u ); + TESTCASE( i == 32767u ); } { // reading +077777, o unsigned short i = -1; TESTSCAN( 1, 7, octal, 30, SCANPARMS( "%ho", &i ) ); - CHECK_EQUAL( i, 32767u ); + TESTCASE( i == 32767u ); } { // reading 0177777, o @@ -973,13 +973,13 @@ // reading 017777777777, o unsigned int i = -1; TESTSCAN( 1, 12, octal, 57, SCANPARMS( "%o", &i ) ); - CHECK_EQUAL( i, 2147483647u ); + TESTCASE( i == 2147483647u ); } { // reading +017777777777, o unsigned int i = -1; TESTSCAN( 1, 13, octal, 56, SCANPARMS( "%o", &i ) ); - CHECK_EQUAL( i, 2147483647u ); + TESTCASE( i == 2147483647u ); } { // reading 037777777777, o @@ -1003,13 +1003,13 @@ // reading 017777777777, o unsigned long i = -1; TESTSCAN( 1, 12, octal, 57, SCANPARMS( "%lo", &i ) ); - CHECK_EQUAL( i, 2147483647lu ); + TESTCASE( i == 2147483647lu ); } { // reading +017777777777, o unsigned long i = -1; TESTSCAN( 1, 13, octal, 56, SCANPARMS( "%lo", &i ) ); - CHECK_EQUAL( i, 2147483647lu ); + TESTCASE( i == 2147483647lu ); } { // reading 037777777777, o @@ -1067,55 +1067,55 @@ // reading abc memset( buffer, '\0', BUFSIZE ); TESTSCAN( 1, 3, alpha, 0, SCANPARMS( "%[abc]", buffer ) ); - CHECK_FALSE( memcmp( buffer, "abc", 4 ) ); + TESTCASE( memcmp( buffer, "abc", 4 ) == 0 ); } { // reading a-c memset( buffer, '\0', BUFSIZE ); TESTSCAN( 1, 3, alpha, 0, SCANPARMS( "%[a-c]", buffer ) ); - CHECK_FALSE( memcmp( buffer, "abc", 4 ) ); + TESTCASE( memcmp( buffer, "abc", 4 ) == 0 ); } { // reading a-h memset( buffer, '\0', BUFSIZE ); TESTSCAN( 1, 8, alpha, 0, SCANPARMS( "%[a-h]", buffer ) ); - CHECK_FALSE( memcmp( buffer, "abcdefgh", 9 ) ); + TESTCASE( memcmp( buffer, "abcdefgh", 9 ) == 0 ); } { // reading o-r, including [, seperate char memset( buffer, '\0', BUFSIZE ); TESTSCAN( 1, 5, alpha, 15, SCANPARMS( "%[[o-qr]", buffer ) ); - CHECK_FALSE( memcmp( buffer, "op[qr", 6 ) ); + TESTCASE( memcmp( buffer, "op[qr", 6 ) == 0 ); } { // reading v-y, including ], two groups memset( buffer, '\0', BUFSIZE ); TESTSCAN( 1, 5, alpha, 23, SCANPARMS( "%[]v-wx-y]", buffer ) ); - CHECK_FALSE( memcmp( buffer, "vw]xy", 6 ) ); + TESTCASE( memcmp( buffer, "vw]xy", 6 ) == 0 ); } { // missing on first character memset( buffer, '\0', BUFSIZE ); TESTSCAN( 0, -1, alpha, 0, SCANPARMS( "%[b]", buffer ) ); - CHECK_FALSE( memcmp( buffer, "", 1 ) ); + TESTCASE( memcmp( buffer, "", 1 ) == 0 ); } { // eof while reading, two groups memset( buffer, '\0', BUFSIZE ); TESTSCAN( 1, 2, alpha, 27, SCANPARMS( "%[a-zA-Z]", buffer ) ); - CHECK_FALSE( memcmp( buffer, "yz", 3 ) ); + TESTCASE( memcmp( buffer, "yz", 3 ) == 0 ); } { // eof before reading memset( buffer, '\0', BUFSIZE ); TESTSCAN( -1, -1, alpha, 29, SCANPARMS( "%[a-z]", buffer ) ); - CHECK_FALSE( memcmp( buffer, "", 1 ) ); + TESTCASE( memcmp( buffer, "", 1 ) == 0 ); } { // negation - [^...] memset( buffer, '\0', BUFSIZE ); TESTSCAN( 1, 3, alpha, 0, SCANPARMS( "%[^d-f]", buffer ) ); - CHECK_FALSE( memcmp( buffer, "abc", 4 ) ); + TESTCASE( memcmp( buffer, "abc", 4 ) == 0 ); } #ifndef REGTEST @@ -1164,18 +1164,18 @@ // reading -0x, x unsigned char i = 1; TESTSCAN( 0, -1, special, 0, SCANPARMS( "%hhx", &i ) ); - CHECK_EQUAL( i, 1 ); /* FIXME */ + TESTCASE( i == 1 ); /* FIXME */ } { // reading -0x, x unsigned short i = 1; TESTSCAN( 0, -1, special, 0, SCANPARMS( "%hx", &i ) ); - CHECK_EQUAL( i, 1 ); /* FIXME */ + TESTCASE( i == 1 ); /* FIXME */ } { // reading -0x, x unsigned int i = 1; TESTSCAN( 0, -1, special, 0, SCANPARMS( "%x", &i ) ); - CHECK_EQUAL( i, 1 ); /* FIXME */ + TESTCASE( i == 1 ); /* FIXME */ } #endif diff --git a/testing/sscan_sources.incl b/testing/sscan_sources.incl index 78063a9..027935c 100644 --- a/testing/sscan_sources.incl +++ b/testing/sscan_sources.incl @@ -26,12 +26,12 @@ int res = SCANFUNC( source + offset, __VA_ARGS__ ); \ if ( res != result ) \ { \ - rc += 1; \ + TEST_RESULTS += 1; \ printf( "FAILED: " __FILE__ ", line %d - expected result %d, got %d\n", __LINE__, result, res ); \ } \ if ( n != count ) \ { \ - rc += 1; \ + TEST_RESULTS += 1; \ printf( "FAILED: " __FILE__ ", line %d - expected count %d, got %d\n", __LINE__, count, n ); \ } \ } while ( 0 ) -- 2.40.0