[igt-dev] [PATCH i-g-t] tests/i915/kms_frontbuffer_tracking: Convert tests to dynamic
Nidhi Gupta
nidhi1.gupta at intel.com
Thu Sep 22 01:35:52 UTC 2022
Covert the existing subtests to dynamic subtests.
Signed-off-by: Nidhi Gupta <nidhi1.gupta at intel.com>
---
tests/i915/kms_frontbuffer_tracking.c | 265 ++++++++++++++------------
1 file changed, 146 insertions(+), 119 deletions(-)
diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
index 9518c706..e4d7862d 100644
--- a/tests/i915/kms_frontbuffer_tracking.c
+++ b/tests/i915/kms_frontbuffer_tracking.c
@@ -3432,68 +3432,80 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
devid = intel_get_drm_devid(drm.fd);
}
- for (t.feature = 0; t.feature < FEATURE_COUNT; t.feature++) {
- if (!opt.show_hidden && t.feature == FEATURE_NONE)
- continue;
- for (t.pipes = 0; t.pipes < PIPE_COUNT; t.pipes++) {
- t.screen = SCREEN_PRIM;
- t.plane = PLANE_PRI;
- t.fbs = FBS_INDIVIDUAL;
- t.format = FORMAT_DEFAULT;
- /* Make sure nothing is using these values. */
- t.flip = -1;
- t.method = -1;
- t.tiling = opt.tiling;
-
- igt_subtest_f("%s-%s-rte",
- feature_str(t.feature),
- pipes_str(t.pipes))
- rte_subtest(&t);
+ igt_subtest_with_dynamic("rte") {
+ for (t.feature = 0; t.feature < FEATURE_COUNT; t.feature++) {
+ if (!opt.show_hidden && t.feature == FEATURE_NONE)
+ continue;
+ for (t.pipes = 0; t.pipes < PIPE_COUNT; t.pipes++) {
+ t.screen = SCREEN_PRIM;
+ t.plane = PLANE_PRI;
+ t.fbs = FBS_INDIVIDUAL;
+ t.format = FORMAT_DEFAULT;
+ /* Make sure nothing is using these values. */
+ t.flip = -1;
+ t.method = -1;
+ t.tiling = opt.tiling;
+ igt_dynamic_f("%s-%s-rte",
+ feature_str(t.feature),
+ pipes_str(t.pipes)) {
+ rte_subtest(&t);
+ }
+ }
}
}
- TEST_MODE_ITER_BEGIN(t)
- igt_subtest_f("%s-%s-%s-%s-%s-draw-%s",
- feature_str(t.feature),
- pipes_str(t.pipes),
- screen_str(t.screen),
- plane_str(t.plane),
- fbs_str(t.fbs),
- igt_draw_get_method_name(t.method))
- draw_subtest(&t);
- TEST_MODE_ITER_END
+ igt_subtest_with_dynamic("draw") {
+ TEST_MODE_ITER_BEGIN(t)
+ igt_dynamic_f("%s-%s-%s-%s-%s-draw-%s",
+ feature_str(t.feature),
+ pipes_str(t.pipes),
+ screen_str(t.screen),
+ plane_str(t.plane),
+ fbs_str(t.fbs),
+ igt_draw_get_method_name(t.method)) {
+ draw_subtest(&t);
+ }
- TEST_MODE_ITER_BEGIN(t)
- if (t.plane != PLANE_PRI ||
- t.screen == SCREEN_OFFSCREEN ||
- (!opt.show_hidden && t.method != IGT_DRAW_BLT))
- continue;
+ TEST_MODE_ITER_END
+ }
- for (t.flip = 0; t.flip < FLIP_COUNT; t.flip++)
- igt_subtest_f("%s-%s-%s-%s-%sflip-%s",
+ igt_subtest_with_dynamic("flip") {
+ TEST_MODE_ITER_BEGIN(t)
+ if (t.plane != PLANE_PRI ||
+ t.screen == SCREEN_OFFSCREEN ||
+ (!opt.show_hidden && t.method != IGT_DRAW_BLT))
+ continue;
+
+ for (t.flip = 0; t.flip < FLIP_COUNT; t.flip++)
+ igt_dynamic_f("%s-%s-%s-%s-%sflip-%s",
+ feature_str(t.feature),
+ pipes_str(t.pipes),
+ screen_str(t.screen),
+ fbs_str(t.fbs),
+ flip_str(t.flip),
+ igt_draw_get_method_name(t.method)) {
+ flip_subtest(&t);
+ }
+ TEST_MODE_ITER_END
+ }
+
+ igt_subtest_with_dynamic("fliptrack") {
+ TEST_MODE_ITER_BEGIN(t)
+ if (t.plane != PLANE_PRI ||
+ t.screen != SCREEN_PRIM ||
+ t.method != IGT_DRAW_MMAP_GTT ||
+ (t.feature & FEATURE_FBC) == 0)
+ continue;
+
+ igt_dynamic_f("%s-%s-%s-fliptrack-%s",
feature_str(t.feature),
pipes_str(t.pipes),
- screen_str(t.screen),
fbs_str(t.fbs),
- flip_str(t.flip),
- igt_draw_get_method_name(t.method))
- flip_subtest(&t);
- TEST_MODE_ITER_END
-
- TEST_MODE_ITER_BEGIN(t)
- if (t.plane != PLANE_PRI ||
- t.screen != SCREEN_PRIM ||
- t.method != IGT_DRAW_MMAP_GTT ||
- (t.feature & FEATURE_FBC) == 0)
- continue;
-
- igt_subtest_f("%s-%s-%s-fliptrack-%s",
- feature_str(t.feature),
- pipes_str(t.pipes),
- fbs_str(t.fbs),
- igt_draw_get_method_name(t.method))
- fliptrack_subtest(&t, FLIP_PAGEFLIP);
- TEST_MODE_ITER_END
+ igt_draw_get_method_name(t.method)) {
+ fliptrack_subtest(&t, FLIP_PAGEFLIP);
+ }
+ TEST_MODE_ITER_END
+ }
TEST_MODE_ITER_BEGIN(t)
if (t.screen == SCREEN_OFFSCREEN ||
@@ -3518,81 +3530,96 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
onoff_subtest(&t);
TEST_MODE_ITER_END
- TEST_MODE_ITER_BEGIN(t)
- if (t.screen == SCREEN_OFFSCREEN ||
- t.method != IGT_DRAW_BLT ||
- t.plane != PLANE_SPR)
- continue;
-
- igt_subtest_f("%s-%s-%s-%s-%s-fullscreen",
- feature_str(t.feature),
- pipes_str(t.pipes),
- screen_str(t.screen),
- plane_str(t.plane),
- fbs_str(t.fbs))
- fullscreen_plane_subtest(&t);
- TEST_MODE_ITER_END
+ igt_subtest_with_dynamic("fullscreen") {
+ TEST_MODE_ITER_BEGIN(t)
+ if (t.screen == SCREEN_OFFSCREEN ||
+ t.method != IGT_DRAW_BLT ||
+ t.plane != PLANE_SPR)
+ continue;
- TEST_MODE_ITER_BEGIN(t)
- if (t.screen != SCREEN_PRIM ||
- t.method != IGT_DRAW_BLT ||
- (!opt.show_hidden && t.plane != PLANE_PRI) ||
- (!opt.show_hidden && t.fbs != FBS_INDIVIDUAL))
- continue;
+ igt_dynamic_f("%s-%s-%s-%s-%s-fullscreen",
+ feature_str(t.feature),
+ pipes_str(t.pipes),
+ screen_str(t.screen),
+ plane_str(t.plane),
+ fbs_str(t.fbs)) {
+ fullscreen_plane_subtest(&t);
+ }
+ TEST_MODE_ITER_END
+ }
- igt_subtest_f("%s-%s-%s-%s-multidraw",
- feature_str(t.feature),
- pipes_str(t.pipes),
- plane_str(t.plane),
- fbs_str(t.fbs))
- multidraw_subtest(&t);
- TEST_MODE_ITER_END
+ igt_subtest_with_dynamic("multidraw") {
+ TEST_MODE_ITER_BEGIN(t)
+ if (t.screen != SCREEN_PRIM ||
+ t.method != IGT_DRAW_BLT ||
+ (!opt.show_hidden && t.plane != PLANE_PRI) ||
+ (!opt.show_hidden && t.fbs != FBS_INDIVIDUAL))
+ continue;
- TEST_MODE_ITER_BEGIN(t)
- if (t.pipes != PIPE_SINGLE ||
- t.screen != SCREEN_PRIM ||
- t.plane != PLANE_PRI ||
- t.fbs != FBS_INDIVIDUAL ||
- t.method != IGT_DRAW_MMAP_GTT)
- continue;
+ igt_dynamic_f("%s-%s-%s-%s-multidraw",
+ feature_str(t.feature),
+ pipes_str(t.pipes),
+ plane_str(t.plane),
+ fbs_str(t.fbs)) {
+ multidraw_subtest(&t);
+ }
+ TEST_MODE_ITER_END
+ }
- igt_subtest_f("%s-farfromfence-%s",
- feature_str(t.feature),
- igt_draw_get_method_name(t.method))
- farfromfence_subtest(&t);
- TEST_MODE_ITER_END
+ igt_subtest_with_dynamic("farfromfence") {
+ TEST_MODE_ITER_BEGIN(t)
+ if (t.pipes != PIPE_SINGLE ||
+ t.screen != SCREEN_PRIM ||
+ t.plane != PLANE_PRI ||
+ t.fbs != FBS_INDIVIDUAL ||
+ t.method != IGT_DRAW_MMAP_GTT)
+ continue;
- TEST_MODE_ITER_BEGIN(t)
- if (t.pipes != PIPE_SINGLE ||
- t.screen != SCREEN_PRIM ||
- t.plane != PLANE_PRI ||
- t.fbs != FBS_INDIVIDUAL)
- continue;
+ igt_dynamic_f("%s-farfromfence-%s",
+ feature_str(t.feature),
+ igt_draw_get_method_name(t.method)) {
+ farfromfence_subtest(&t);
+ }
+ TEST_MODE_ITER_END
+ }
- for (t.format = 0; t.format < FORMAT_COUNT; t.format++) {
- /* Skip what we already tested. */
- if (t.format == FORMAT_DEFAULT)
+ igt_subtest_with_dynamic("format-draw") {
+ TEST_MODE_ITER_BEGIN(t)
+ if (t.pipes != PIPE_SINGLE ||
+ t.screen != SCREEN_PRIM ||
+ t.plane != PLANE_PRI ||
+ t.fbs != FBS_INDIVIDUAL)
continue;
- igt_subtest_f("%s-%s-draw-%s",
- feature_str(t.feature),
- format_str(t.format),
- igt_draw_get_method_name(t.method))
- format_draw_subtest(&t);
- }
- TEST_MODE_ITER_END
+ for (t.format = 0; t.format < FORMAT_COUNT; t.format++) {
+ /* Skip what we already tested. */
+ if (t.format == FORMAT_DEFAULT)
+ continue;
- TEST_MODE_ITER_BEGIN(t)
- if (t.pipes != PIPE_SINGLE ||
- t.screen != SCREEN_PRIM ||
- t.plane != PLANE_PRI ||
- t.method != IGT_DRAW_BLT)
- continue;
- igt_subtest_f("%s-%s-scaledprimary",
+ igt_dynamic_f("%s-%s-draw-%s",
+ feature_str(t.feature),
+ format_str(t.format),
+ igt_draw_get_method_name(t.method)) {
+ format_draw_subtest(&t);
+ }
+ }
+ TEST_MODE_ITER_END
+ }
+
+ igt_subtest_with_dynamic("scaledprimary") {
+ TEST_MODE_ITER_BEGIN(t)
+ if (t.pipes != PIPE_SINGLE ||
+ t.screen != SCREEN_PRIM ||
+ t.plane != PLANE_PRI ||
+ t.method != IGT_DRAW_BLT)
+ continue;
+ igt_dynamic_f("%s-%s-scaledprimary",
feature_str(t.feature),
- fbs_str(t.fbs))
+ fbs_str(t.fbs)) {
scaledprimary_subtest(&t);
- TEST_MODE_ITER_END
+ }
+ TEST_MODE_ITER_END
+ }
TEST_MODE_ITER_BEGIN(t)
if (t.pipes != PIPE_SINGLE ||
@@ -3610,8 +3637,8 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
badstride_subtest(&t);
igt_subtest_f("%s-stridechange", feature_str(t.feature))
- stridechange_subtest(&t);
+ stridechange_subtest(&t);
for (t.tiling = TILING_LINEAR; t.tiling < TILING_COUNT;
t.tiling++) {
if (t.tiling == TILING_X)
--
2.36.0
More information about the igt-dev
mailing list