From 1b5645ae47b2c158cca98134799fd0014c0833d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nils=20O=2E=20Sel=C3=A5sdal?= Date: Thu, 27 Dec 2012 23:11:13 +0100 Subject: [PATCH] Convert to a table of function pointers for the suites --- test/test_runner.c | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/test/test_runner.c b/test/test_runner.c index cde5ede..16efadb 100644 --- a/test/test_runner.c +++ b/test/test_runner.c @@ -3,6 +3,9 @@ #include #include + +typedef Suite *(*suite_func)(void); + extern Suite *bitvec_suite(void); extern Suite *bcd_suite(void); extern Suite *hex_suite(void); @@ -13,27 +16,34 @@ extern Suite *logging_suite(void); extern Suite *threadqueue_suite(void); extern Suite *buffer_suite(void); +static suite_func suites[] = { + bitvec_suite, + bcd_suite, + hex_suite, + container_of_suite, + read_file_suite, + pack_suite, + logging_suite, + threadqueue_suite, + buffer_suite +}; + int main (int argc, char *argv[]) { int xml_output = argc > 1 && strcmp(argv[1], "--xml") == 0; int number_failed = 0; + size_t i; SRunner *sr = srunner_create (NULL); if (xml_output) srunner_set_xml(sr, "result.xml"); - srunner_add_suite(sr, bitvec_suite()); - srunner_add_suite(sr, bcd_suite()); - srunner_add_suite(sr, hex_suite()); - srunner_add_suite(sr, container_of_suite()); - srunner_add_suite(sr, read_file_suite()); - srunner_add_suite(sr, pack_suite()); - srunner_add_suite(sr, logging_suite()); - srunner_add_suite(sr, threadqueue_suite()); - srunner_add_suite(sr, buffer_suite()); + for(i = 0; i < sizeof suites/sizeof suites[0]; i++) { + srunner_add_suite(sr, suites[i]()); + } srunner_run_all (sr, CK_VERBOSE); number_failed = srunner_ntests_failed (sr);