From: Timo Sirainen Date: Tue, 30 Jun 2009 01:55:38 +0000 (-0400) Subject: unit testing: Added support for doing test_init/run/deinit in separate functions. X-Git-Tag: 2.0.alpha1~497 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3a14416ca1f20640156c36534a7815f005c51eab;p=thirdparty%2Fdovecot%2Fcore.git unit testing: Added support for doing test_init/run/deinit in separate functions. --HG-- branch : HEAD --- diff --git a/src/lib-test/test-common.c b/src/lib-test/test-common.c index db7c974aee..69e6da23e7 100644 --- a/src/lib-test/test-common.c +++ b/src/lib-test/test-common.c @@ -168,7 +168,7 @@ void test_out_reason(const char *name, bool success, const char *reason) total_count++; } -static void test_init(void) +void test_init(void) { test_prefix = NULL; failure_count = 0; @@ -177,22 +177,27 @@ static void test_init(void) lib_init(); } -static int test_deinit(void) +int test_deinit(void) { i_assert(test_prefix == NULL); printf("%u / %u tests failed\n", failure_count, total_count); return failure_count == 0 ? 0 : 1; } -int test_run(void (*test_functions[])(void)) +void test_run_funcs(void (*test_functions[])(void)) { unsigned int i; - test_init(); for (i = 0; test_functions[i] != NULL; i++) { T_BEGIN { test_functions[i](); } T_END; } +} + +int test_run(void (*test_functions[])(void)) +{ + test_init(); + test_run_funcs(test_functions); return test_deinit(); } diff --git a/src/lib-test/test-common.h b/src/lib-test/test-common.h index 4978ee2a4e..8ec116c0d3 100644 --- a/src/lib-test/test-common.h +++ b/src/lib-test/test-common.h @@ -17,4 +17,8 @@ void test_out_reason(const char *name, bool success, const char *reason); int test_run(void (*test_functions[])(void)); +void test_init(void); +int test_deinit(void); +void test_run_funcs(void (*test_functions[])(void)); + #endif