tests: use drmtest_skip() in caching ioctl helpers
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 12 Aug 2013 08:43:59 +0000 (10:43 +0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 12 Aug 2013 09:17:58 +0000 (11:17 +0200)
commit7553ad6e10f76aa703359a10e08138e14501d54d
tree1e778fa0a06bf91bdc43aa2574be555396e42d5c
parenta4038d3853b98707a803f5d1fb5c9ebe32f0b84b
tests: use drmtest_skip() in caching ioctl helpers

This way we can rip out all the skip handling from the test control flow,
and additionally (by using drmtest_retval()) even get correct exit codes.

The only tricky part is that when we only want ot skip parts of a test
(like for gem_pread and gem_pwrite) we need to split out those parts as
subtests. But no addition of control-flow is required, the set/longjmp
magic in the helpers all makes it happen.

Also we make extensive use of the behaviour of drmtest_skip to skip
all subsequent subtests if it is called outside of a subtest. This allows
us to re-flatten the control flow a lot.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
lib/drmtest.c
lib/drmtest.h
tests/Makefile.am
tests/gem_caching.c
tests/gem_partial_pwrite_pread.c
tests/gem_pread.c
tests/gem_pread_after_blit.c
tests/gem_pwrite.c
tests/gem_pwrite_pread.c