summaryrefslogtreecommitdiff
path: root/tests/kms_universal_plane.c
diff options
context:
space:
mode:
authorMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2017-01-12 16:08:30 +0100
committerMaarten Lankhorst <maarten.lankhorst@linux.intel.com>2017-01-12 16:08:32 +0100
commitef8cff635c8cee75a623753237c5e774a7b0b95f (patch)
treeba9c5b8563910eb8a49d4274eedb06140a33187b /tests/kms_universal_plane.c
parentdea85f65b58e5045315503a39162e118383ceaba (diff)
kms_universal_plane: Skip tests if there are no valid outputs for the pipe
The tests shouldn't pass if nothing has been tested. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Diffstat (limited to 'tests/kms_universal_plane.c')
-rw-r--r--tests/kms_universal_plane.c27
1 files changed, 20 insertions, 7 deletions
diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
index b9e0651b..48560212 100644
--- a/tests/kms_universal_plane.c
+++ b/tests/kms_universal_plane.c
@@ -742,29 +742,40 @@ run_tests_for_pipe(data_t *data, enum pipe pipe)
{
igt_output_t *output;
+ igt_fixture {
+ int valid_tests = 0;
+
+ igt_skip_on(pipe >= data->display.n_pipes);
+
+ for_each_valid_output_on_pipe(&data->display, pipe, output)
+ valid_tests++;
+
+ igt_require_f(valid_tests, "no valid crtc/connector combinations found\n");
+ }
+
igt_subtest_f("universal-plane-pipe-%s-functional",
kmstest_pipe_name(pipe))
- for_each_connected_output(&data->display, output)
+ for_each_valid_output_on_pipe(&data->display, pipe, output)
functional_test_pipe(data, pipe, output);
igt_subtest_f("universal-plane-pipe-%s-sanity",
kmstest_pipe_name(pipe))
- for_each_connected_output(&data->display, output)
+ for_each_valid_output_on_pipe(&data->display, pipe, output)
sanity_test_pipe(data, pipe, output);
igt_subtest_f("disable-primary-vs-flip-pipe-%s",
kmstest_pipe_name(pipe))
- for_each_connected_output(&data->display, output)
+ for_each_valid_output_on_pipe(&data->display, pipe, output)
pageflip_test_pipe(data, pipe, output);
igt_subtest_f("cursor-fb-leak-pipe-%s",
kmstest_pipe_name(pipe))
- for_each_connected_output(&data->display, output)
+ for_each_valid_output_on_pipe(&data->display, pipe, output)
cursor_leak_test_pipe(data, pipe, output);
igt_subtest_f("universal-plane-gen9-features-pipe-%s",
kmstest_pipe_name(pipe))
- for_each_connected_output(&data->display, output)
+ for_each_valid_output_on_pipe(&data->display, pipe, output)
gen9_test_pipe(data, pipe, output);
}
@@ -784,8 +795,10 @@ igt_main
igt_display_init(&data.display, data.drm_fd);
}
- for (int pipe = 0; pipe < I915_MAX_PIPES; pipe++)
- run_tests_for_pipe(&data, pipe);
+ for (int pipe = 0; pipe < I915_MAX_PIPES; pipe++) {
+ igt_subtest_group
+ run_tests_for_pipe(&data, pipe);
+ }
igt_fixture {
igt_display_fini(&data.display);