aboutsummaryrefslogtreecommitdiff
path: root/testsuite/testsuite.h
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/testsuite.h')
-rw-r--r--testsuite/testsuite.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/testsuite/testsuite.h b/testsuite/testsuite.h
index f190249..44d1730 100644
--- a/testsuite/testsuite.h
+++ b/testsuite/testsuite.h
@@ -109,6 +109,8 @@ struct test {
const struct keyval *env_vars;
bool need_spawn;
bool expected_fail;
+ /* allow to skip tests that don't meet compile-time dependencies */
+ bool skip;
bool print_outputs;
} __attribute__((aligned(8)));
@@ -138,14 +140,16 @@ int test_run(const struct test *t);
/* Test definitions */
-#define DEFINE_TEST(_name, ...) \
+#define DEFINE_TEST_WITH_FUNC(_name, _func, ...) \
static const struct test UNIQ(s##_name) \
__attribute__((used, section("kmod_tests"), aligned(8))) = { \
.name = #_name, \
- .func = _name, \
+ .func = _func, \
## __VA_ARGS__ \
};
+#define DEFINE_TEST(_name, ...) DEFINE_TEST_WITH_FUNC(_name, _name, __VA_ARGS__)
+
#define TESTSUITE_MAIN() \
extern struct test __start_kmod_tests[] __attribute__((weak, visibility("hidden"))); \
extern struct test __stop_kmod_tests[] __attribute__((weak, visibility("hidden"))); \