From 399dc2bc0c07fbe904742a1f109142be70ab4a56 Mon Sep 17 00:00:00 2001 From: "Alfred E. Heggestad" Date: Sat, 10 Oct 2015 21:17:00 +0200 Subject: test: run all testcases from an array of tests --- test/main.c | 55 +++++++++++++++++++++++++++++++++++-------------------- test/ua.c | 6 +++--- 2 files changed, 38 insertions(+), 23 deletions(-) diff --git a/test/main.c b/test/main.c index d39adfe..29e8460 100644 --- a/test/main.c +++ b/test/main.c @@ -8,29 +8,43 @@ #include "test.h" -static int run_tests(void) -{ - int err; +typedef int (test_exec_h)(void); - err = test_cmd(); - if (err) - return err; +struct test { + test_exec_h *exec; + const char *name; +}; - err = test_ua_alloc(); - if (err) - return err; +#define TEST(a) {a, #a} - err = test_uag_find_param(); - if (err) - return err; +static const struct test tests[] = { + TEST(test_cmd), + TEST(test_ua_alloc), + TEST(test_uag_find_param), + TEST(test_ua_register), + TEST(test_cplusplus), +}; - err = test_ua_register(); - if (err) - return err; - err = test_cplusplus(); - if (err) - return err; +static int run_tests(bool verbose) +{ + size_t i; + int err; + + for (i=0; igot_register_ok = true; + ++t->got_register_ok; /* verify register success */ ASSERT_TRUE(ua_isregistered(t->ua)); @@ -84,7 +84,7 @@ static int reg(enum sip_transp tp) ASSERT_TRUE(t.srv->n_register_req > 0); ASSERT_EQ(tp, t.srv->tp_last); - ASSERT_TRUE(t.got_register_ok); + ASSERT_TRUE(t.got_register_ok > 0); out: if (err) { -- cgit v1.2.3