Skip to content

Commit e85fdac

Browse files
yuwatabluca
authored andcommitted
test: allow to set NULL to intro or outro
Addresses systemd#22338 (comment).
1 parent b0c7e3d commit e85fdac

22 files changed

+44
-43
lines changed

src/shared/tests.h

Lines changed: 23 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -110,27 +110,28 @@ static inline int run_test_table(void) {
110110
return r;
111111
}
112112

113-
static inline int test_nop(void) {
114-
return EXIT_SUCCESS;
115-
}
116-
117-
#define DEFINE_CUSTOM_TEST_MAIN(log_level, intro, outro) \
118-
int main(int argc, char *argv[]) { \
119-
int _r, _q; \
120-
test_setup_logging(log_level); \
121-
save_argc_argv(argc, argv); \
122-
_r = intro(); \
123-
if (_r == EXIT_SUCCESS) \
124-
_r = run_test_table(); \
125-
_q = outro(); \
126-
static_destruct(); \
127-
if (_r < 0) \
128-
return EXIT_FAILURE; \
129-
if (_r != EXIT_SUCCESS) \
130-
return _r; \
131-
if (_q < 0) \
132-
return EXIT_FAILURE; \
133-
return _q; \
113+
#define DEFINE_TEST_MAIN_FULL(log_level, intro, outro) \
114+
int main(int argc, char *argv[]) { \
115+
int (*_intro)(void) = intro; \
116+
int (*_outro)(void) = outro; \
117+
int _r, _q; \
118+
test_setup_logging(log_level); \
119+
save_argc_argv(argc, argv); \
120+
_r = _intro ? _intro() : EXIT_SUCCESS; \
121+
if (_r == EXIT_SUCCESS) \
122+
_r = run_test_table(); \
123+
_q = _outro ? _outro() : EXIT_SUCCESS; \
124+
static_destruct(); \
125+
if (_r < 0) \
126+
return EXIT_FAILURE; \
127+
if (_r != EXIT_SUCCESS) \
128+
return _r; \
129+
if (_q < 0) \
130+
return EXIT_FAILURE; \
131+
return _q; \
134132
}
135133

136-
#define DEFINE_TEST_MAIN(log_level) DEFINE_CUSTOM_TEST_MAIN(log_level, test_nop, test_nop)
134+
#define DEFINE_TEST_MAIN_WITH_INTRO(log_level, intro) \
135+
DEFINE_TEST_MAIN_FULL(log_level, intro, NULL)
136+
#define DEFINE_TEST_MAIN(log_level) \
137+
DEFINE_TEST_MAIN_FULL(log_level, NULL, NULL)

src/test/test-barrier.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -444,4 +444,4 @@ static int intro(void) {
444444
return EXIT_SUCCESS;
445445
}
446446

447-
DEFINE_CUSTOM_TEST_MAIN(LOG_INFO, intro, test_nop);
447+
DEFINE_TEST_MAIN_WITH_INTRO(LOG_INFO, intro);

src/test/test-cgroup-setup.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,4 +71,4 @@ static int intro(void) {
7171
return EXIT_SUCCESS;
7272
}
7373

74-
DEFINE_CUSTOM_TEST_MAIN(LOG_DEBUG, intro, test_nop);
74+
DEFINE_TEST_MAIN_WITH_INTRO(LOG_DEBUG, intro);

src/test/test-chown-rec.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,4 +156,4 @@ static int intro(void) {
156156
return EXIT_SUCCESS;
157157
}
158158

159-
DEFINE_CUSTOM_TEST_MAIN(LOG_DEBUG, intro, test_nop);
159+
DEFINE_TEST_MAIN_WITH_INTRO(LOG_DEBUG, intro);

src/test/test-format-table.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -535,4 +535,4 @@ static int intro(void) {
535535
return EXIT_SUCCESS;
536536
}
537537

538-
DEFINE_CUSTOM_TEST_MAIN(LOG_INFO, intro, test_nop);
538+
DEFINE_TEST_MAIN_WITH_INTRO(LOG_INFO, intro);

src/test/test-fs-util.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -973,4 +973,4 @@ static int intro(void) {
973973
return EXIT_SUCCESS;
974974
}
975975

976-
DEFINE_CUSTOM_TEST_MAIN(LOG_INFO, intro, test_nop);
976+
DEFINE_TEST_MAIN_WITH_INTRO(LOG_INFO, intro);

src/test/test-hashmap.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,4 +169,4 @@ static int outro(void) {
169169
return EXIT_SUCCESS;
170170
}
171171

172-
DEFINE_CUSTOM_TEST_MAIN(LOG_INFO, intro, outro);
172+
DEFINE_TEST_MAIN_FULL(LOG_INFO, intro, outro);

src/test/test-install-root.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1272,4 +1272,4 @@ static int intro(void) {
12721272
}
12731273

12741274

1275-
DEFINE_CUSTOM_TEST_MAIN(LOG_INFO, intro, test_nop);
1275+
DEFINE_TEST_MAIN_WITH_INTRO(LOG_INFO, intro);

src/test/test-load-fragment.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -970,4 +970,4 @@ static int intro(void) {
970970
return EXIT_SUCCESS;
971971
}
972972

973-
DEFINE_CUSTOM_TEST_MAIN(LOG_INFO, intro, test_nop);
973+
DEFINE_TEST_MAIN_WITH_INTRO(LOG_INFO, intro);

src/test/test-mountpoint-util.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -309,4 +309,4 @@ static int intro(void) {
309309
return EXIT_SUCCESS;
310310
}
311311

312-
DEFINE_CUSTOM_TEST_MAIN(LOG_DEBUG, intro, test_nop);
312+
DEFINE_TEST_MAIN_WITH_INTRO(LOG_DEBUG, intro);

0 commit comments

Comments
 (0)