]> pd.if.org Git - pdclib/blobdiff - functions/stdio/fscan_sources.incl
Corrected _MIN testcases.
[pdclib] / functions / stdio / fscan_sources.incl
index 8cfa64bd1c1d339a8560c9f04aeb566365a2873b..6502356878096bd424580e4178f1b057b0f72855 100644 (file)
 
     FILE * hexadecimal = fopen( "scanf_testdata_hexadecimal", "wb+" );
     TESTCASE( hexadecimal != NULL );
-    TESTCASE( fwrite( "-0x0 -0x000 -0x7f 0x80 0xff -0x7fff 0x8000\n"
-                      "0xffff -0x7fffffff 0x80000000 0xffffffff\n"
-                      "-0x7fffffffffffffff 0x8000000000000000\n"
-                      "0xffffffffffffffff\n", 1, 142, hexadecimal ) == 142 );
+    TESTCASE( fwrite( "-0x0 -0x000 -0x7f -0x80 0xff -0x7fff -0x8000\n"
+                      "0xffff -0x7fffffff -0x80000000 0xffffffff\n"
+                      "-0x7fffffffffffffff -0x8000000000000000\n"
+                      "0xffffffffffffffff\n", 1, 146, hexadecimal ) == 146 );
     rewind( hexadecimal );
 
     FILE * octal = fopen( "scanf_testdata_octal", "wb+" );
 
 
 /* fscan */
-#define TESTSCAN( result, count, source, offset, format, ... ) \
+#define TESTSCAN( result, count, source, offset, ... ) \
     do \
     { \
         int n = -1; \
         TESTCASE( fseek( source, offset, SEEK_SET ) == 0 ); \
-        TESTCASE( SCANFUNC( source, format "%n", __VA_ARGS__, &n ) == result ); \
-        TESTCASE( n == count ); \
+        int res = SCANFUNC( source, __VA_ARGS__ ); \
+        if ( res != result ) \
+        { \
+            rc += 1; \
+            printf( "FAILED: " __FILE__ ", line %d - expected result %d, got %d\n", __LINE__, result, res ); \
+        } \
+        if ( n != count ) \
+        { \
+            rc += 1; \
+            printf( "FAILED: " __FILE__ ", line %d - expected count %d, got %d\n", __LINE__, count, n ); \
+        } \
     } while ( 0 )
 
+#define SCAN( format )           format "%n",              &n
+#define SCANPARMS( format, ... ) format "%n", __VA_ARGS__, &n
+
+#define _PDCLIB_FSCAN
+