[igt-dev] [PATCH i-g-t] kms_flip_event_leak: Create dynamic subtests

Jeevan B jeevan.b at intel.com
Fri Sep 9 07:14:01 UTC 2022


Converting the existing subtests to dynamic subtests.

Signed-off-by: Jeevan B <jeevan.b at intel.com>
---
 tests/kms_flip_event_leak.c | 27 ++++++++++++++++++---------
 1 file changed, 18 insertions(+), 9 deletions(-)

diff --git a/tests/kms_flip_event_leak.c b/tests/kms_flip_event_leak.c
index ac201293..33aa6ab3 100644
--- a/tests/kms_flip_event_leak.c
+++ b/tests/kms_flip_event_leak.c
@@ -89,24 +89,33 @@ static void test(data_t *data, enum pipe pipe, igt_output_t *output)
 	igt_remove_fb(data->drm_fd, &fb[0]);
 }
 
-igt_simple_main
+igt_main
 {
 	data_t data = {};
 	igt_output_t *output;
 	int valid_tests = 0;
 	enum pipe pipe;
 
-	data.drm_fd = drm_open_driver_master(DRIVER_ANY);
-	kmstest_set_vt_graphics_mode();
+	igt_fixture {
+		data.drm_fd = drm_open_driver_master(DRIVER_ANY);
+		kmstest_set_vt_graphics_mode();
+
+		igt_display_require(&data.display, data.drm_fd);
+	}
 
-	igt_display_require(&data.display, data.drm_fd);
 
-	for_each_pipe_with_valid_output(&data.display, pipe, output) {
-		test(&data, pipe, output);
-		valid_tests++;
+	igt_subtest_with_dynamic("kms_flip_event_leak") {
+		for_each_pipe_with_valid_output(&data.display, pipe, output) {
+			igt_dynamic_f("pipe-%s", kmstest_pipe_name(pipe)) {
+				test(&data, pipe, output);
+				valid_tests++;
+			}
+		}
 	}
 
-	igt_require_f(valid_tests, "no valid crtc/connector combinations found\n");
+	igt_fixture {
+		igt_require_f(valid_tests, "no valid crtc/connector combinations found\n");
 
-	igt_display_fini(&data.display);
+		igt_display_fini(&data.display);
+	}
 }
-- 
2.36.0



More information about the igt-dev mailing list