selftests/nolibc: report: print a summarized test status
authorZhangjin Wu <falcon@tinylab.org>
Thu, 6 Jul 2023 09:03:34 +0000 (17:03 +0800)
committerWilly Tarreau <w@1wt.eu>
Wed, 23 Aug 2023 02:40:22 +0000 (04:40 +0200)
one of the test status: success, warning and failure is printed to
summarize the passed, skipped and failed values.

- "success" means no skipped and no failed.
- "warning" means has at least one skipped and no failed.
- "failure" means all tests are failed.

Suggested-by: Willy Tarreau <w@1wt.eu>
Link: https://lore.kernel.org/lkml/20230702164358.GB16233@1wt.eu/
Signed-off-by: Zhangjin Wu <falcon@tinylab.org>
Signed-off-by: Willy Tarreau <w@1wt.eu>
tools/testing/selftests/nolibc/Makefile

index d408b68..84b9a46 100644 (file)
@@ -85,7 +85,8 @@ CFLAGS  ?= -Os -fno-ident -fno-asynchronous-unwind-tables -std=c89 \
 LDFLAGS := -s
 
 REPORT  ?= awk '/\[OK\][\r]*$$/{p++} /\[FAIL\][\r]*$$/{f++;print} /\[SKIPPED\][\r]*$$/{s++} \
-               END{ printf("%d test(s) passed, %d skipped, %d failed.\n", p, s, f); \
+               END{ printf("%d test(s) passed, %d skipped, %d failed => status: ", p, s, f); \
+               if (f) printf("failure\n"); else if (s) printf("warning\n"); else printf("success\n");; \
                printf("See all results in %s\n", ARGV[1]); }'
 
 help: