git.fiddlerwoaroof.com
Browse code

Colorize test results

Ed Langley authored on 07/06/2017 16:23:02
Showing 1 changed files
... ...
@@ -14,9 +14,14 @@
14 14
 
15 15
 #include <cstring>
16 16
 #include <cstdio>
17
+
18
+#define RESET_COLORS "\x1b[0m"
19
+#define FOREGROUND_GREEN "\x1b[32m"
20
+#define FOREGROUND_RED "\x1b[31m"
21
+
17 22
 #define check(assertion, msg) \
18 23
     if (!(assertion)) { \
19
-      fprintf(stderr, "> assertion failed: %s\n", msg); \
24
+        fprintf(stderr, "> assertion failed: %s\n", msg);    \
20 25
       return 0; \
21 26
     }
22 27
 
... ...
@@ -34,10 +39,10 @@
34 39
     { \
35 40
         int result = NAME (); \
36 41
         if (!result) { \
37
-            fprintf(stderr, "! <%s:%d> test failed: %s\n", __FILE__, __LINE__, #NAME); \
42
+            fprintf(stderr, "%s! <%s:%d> test failed: %s\n%s", FOREGROUND_RED, __FILE__, __LINE__, #NAME, RESET_COLORS); \
38 43
 	    return 0; \
39 44
         } else { \
40
-            fprintf (stderr, "> test passed: %s\n", #NAME); \
45
+            fprintf (stderr, "%s> test passed: %s\n%s", FOREGROUND_GREEN, #NAME, RESET_COLORS); \
41 46
         } \
42 47
     }
43 48
 
... ...
@@ -45,4 +50,3 @@
45 50
 #define fail() return 0
46 51
 
47 52
 #endif
48
-