summaryrefslogtreecommitdiff
path: root/lib/drmtest.h
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2013-10-31 16:23:26 +0100
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-11-01 21:10:59 +0100
commit071e9ca1ca4424ba35edec0246918efdd0528d76 (patch)
tree7606357a8f0116d17f2e30a74b274796ba83f3d8 /lib/drmtest.h
parent223a61e12e119d96484ed05c563d1781fd613a4e (diff)
lib: add igt_main macro
In the past new testcases with subtest often forgot to add the call to igt_exit at the end of their main() function. That is now caught with a bit more obnoxious asserts, but it's still a nuissance. This little igt_main macro takes care of that (and also of calling the subtest machinery initialization code correctly). If no one objects I'll roll this out for all the simple cases (i.e. those tests that don't have additional argv parsing on top of the subtest machinery). v2: Roll it out across the board. Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'lib/drmtest.h')
-rw-r--r--lib/drmtest.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/drmtest.h b/lib/drmtest.h
index be0632f4..a9fd0bc5 100644
--- a/lib/drmtest.h
+++ b/lib/drmtest.h
@@ -138,6 +138,16 @@ bool __igt_run_subtest(const char *subtest_name);
(setjmp(igt_subtest_jmpbuf) == 0); \
igt_success())
const char *igt_subtest_name(void);
+#define igt_main \
+ static void igt_tokencat(__real_main, __LINE__)(void); \
+ int main(int argc, char **argv) { \
+ igt_subtest_init(argc, argv); \
+ igt_tokencat(__real_main, __LINE__)(); \
+ igt_exit(); \
+ } \
+ static void igt_tokencat(__real_main, __LINE__)(void) \
+
+
/**
* igt_skip - subtest aware test skipping
*