diff options
author | Jan Janssen <medhefgo@web.de> | 2021-11-23 13:40:27 +0100 |
---|---|---|
committer | Jan Janssen <medhefgo@web.de> | 2021-11-25 14:56:33 +0100 |
commit | a40b728e1172cc07a09e12dd56089ab37c8c5924 (patch) | |
tree | 9435a89edaea6bca8e55f639299cd99cff99d200 /src/shared/tests.h | |
parent | 9df247da2849e3154fc343d7ecd439ef4b8f0fa8 (diff) | |
download | systemd-a40b728e1172cc07a09e12dd56089ab37c8c5924.tar.gz |
test: Slightly rework DEFINE_TEST_MAIN macros
- A lot of tests want a different log level
- Provides saved_argc/saved_argv to tests
- Separate intro/outro is more flexible
Diffstat (limited to 'src/shared/tests.h')
-rw-r--r-- | src/shared/tests.h | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/src/shared/tests.h b/src/shared/tests.h index f333ebd842..872b9b2d6c 100644 --- a/src/shared/tests.h +++ b/src/shared/tests.h @@ -6,6 +6,7 @@ #include "sd-daemon.h" #include "macro.h" +#include "util.h" static inline bool manager_errno_skip_test(int r) { return IN_SET(abs(r), @@ -77,16 +78,14 @@ static inline void run_test_table(void) { } } -#define DEFINE_TEST_MAIN \ - int main(int argc, char *argv[]) { \ - test_setup_logging(LOG_INFO); \ - run_test_table(); \ - return EXIT_SUCCESS; \ +#define DEFINE_CUSTOM_TEST_MAIN(log_level, intro, outro) \ + int main(int argc, char *argv[]) { \ + test_setup_logging(log_level); \ + save_argc_argv(argc, argv); \ + intro; \ + run_test_table(); \ + outro; \ + return EXIT_SUCCESS; \ } -#define DEFINE_CUSTOM_TEST_MAIN(impl) \ - int main(int argc, char *argv[]) { \ - test_setup_logging(LOG_INFO); \ - run_test_table(); \ - return impl(); \ - } +#define DEFINE_TEST_MAIN(log_level) DEFINE_CUSTOM_TEST_MAIN(log_level, , ) |