From 3947a2ffd36420f2007cd28b0b874fcfc81943fe Mon Sep 17 00:00:00 2001 From: Thomas Bernard Date: Sat, 15 Feb 2020 11:05:40 +0100 Subject: [PATCH] shows which tests failed --- src/tests/testmain.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/tests/testmain.c b/src/tests/testmain.c index fb947984..b49e23a9 100644 --- a/src/tests/testmain.c +++ b/src/tests/testmain.c @@ -134,8 +134,9 @@ void finish(void) */ int main(int argc, char * * argv) { - int i, r; + int i; int fail = 0; + int r[sizeof(tests) / sizeof(tests[0])]; (void)argc; (void)argv; @@ -149,8 +150,8 @@ int main(int argc, char * * argv) for (i = 0; tests[i].test_func != 0; i++) { printf("Testing %s :\n", tests[i].test_name); - r = tests[i].test_func(); - if (r) + r[i] = tests[i].test_func(); + if (r[i]) printf(ESC_GREEN "OK" ESC_RESET "\n"); else { printf(ESC_RED "FAILED" ESC_RESET "\n"); @@ -167,7 +168,15 @@ int main(int argc, char * * argv) } else { - printf(ESC_RED "%d tests failed" ESC_RESET "\n", fail); + printf(ESC_RED "%d tests failed :\n ", fail); + for (i = 0; tests[i].test_func != 0; i++) + { + if (!r[i]) + { + printf("%s ", tests[i].test_name); + } + } + puts(ESC_RESET); /* puts writes an additional newline character */ return 1; } }