From 0af43d5e5932aaa3b65df17de723d4770677144e Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Fri, 29 Sep 2017 10:00:19 +0100 Subject: igt/gem_workarounds: Reduce manual list to combinatorial loops Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala --- tests/gem_workarounds.c | 50 ++++++++++++++++++++++++------------------------- 1 file changed, 24 insertions(+), 26 deletions(-) diff --git a/tests/gem_workarounds.c b/tests/gem_workarounds.c index 99ae1782..41b58d5b 100644 --- a/tests/gem_workarounds.c +++ b/tests/gem_workarounds.c @@ -219,6 +219,24 @@ static void check_workarounds(int fd, enum operation op, unsigned int flags) igt_main { int device = -1; + const struct { + const char *name; + enum operation op; + } ops[] = { + { "basic-read", SIMPLE_READ }, + { "reset", GPU_RESET }, + { "suspend-resume", SUSPEND_RESUME }, + { } + }, *op; + const struct { + const char *name; + unsigned int flags; + } modes[] = { + { "", 0 }, + { "-context", CONTEXT }, + { "-fd", FD }, + { } + }, *m; igt_fixture { FILE *file; @@ -258,30 +276,10 @@ igt_main close(fd); } - igt_subtest("basic-read") - check_workarounds(device, SIMPLE_READ, 0); - - igt_subtest("basic-read-context") - check_workarounds(device, SIMPLE_READ, CONTEXT); - - igt_subtest("basic-read-fd") - check_workarounds(device, SIMPLE_READ, FD); - - igt_subtest("reset") - check_workarounds(device, GPU_RESET, 0); - - igt_subtest("reset-context") - check_workarounds(device, GPU_RESET, CONTEXT); - - igt_subtest("reset-fd") - check_workarounds(device, GPU_RESET, FD); - - igt_subtest("suspend-resume") - check_workarounds(device, SUSPEND_RESUME, 0); - - igt_subtest("suspend-resume-context") - check_workarounds(device, SUSPEND_RESUME, CONTEXT); - - igt_subtest("suspend-resume-fd") - check_workarounds(device, SUSPEND_RESUME, FD); + for (op = ops; op->name; op++) { + for (m = modes; m->name; m++) { + igt_subtest_f("%s%s", op->name, m->name) + check_workarounds(device, op->op, m->flags); + } + } } -- cgit v1.2.3