[igt-dev] [V5 05/11] tests/kms_cursor_edge_walk: Convert tests to dynamic
Sharma, Swati2
swati2.sharma at intel.com
Wed Jun 8 15:51:02 UTC 2022
Need clean CI.
Overall patch LGTM
Reviewed-by: Swati Sharma <swati2.sharma at intel.com>
On 17-May-22 5:32 PM, Bhanuprakash Modem wrote:
> Convert the existing subtests to dynamic subtests at pipe level.
>
> V2:
> * Fix nested igt_fixture in igt_subtest
> V3:
> * Add output name to subtest
>
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem at intel.com>
> ---
> tests/kms_cursor_edge_walk.c | 63 ++++++++++++++++--------------------
> 1 file changed, 28 insertions(+), 35 deletions(-)
>
> diff --git a/tests/kms_cursor_edge_walk.c b/tests/kms_cursor_edge_walk.c
> index b775714f..526bc6b3 100644
> --- a/tests/kms_cursor_edge_walk.c
> +++ b/tests/kms_cursor_edge_walk.c
> @@ -309,6 +309,17 @@ static const char *help_str =
>
> igt_main_args("", long_opts, help_str, opt_handler, &data)
> {
> + struct {
> + const char *name;
> + unsigned flags;
> + } tests[] = {
> + { "left-edge", EDGE_LEFT },
> + { "right-edge", EDGE_RIGHT },
> + { "top-edge", EDGE_TOP },
> + { "top-bottom", EDGE_BOTTOM },
> + };
> + int i;
> +
> igt_fixture {
> int ret;
>
> @@ -328,44 +339,26 @@ igt_main_args("", long_opts, help_str, opt_handler, &data)
> igt_require_pipe_crc(data.drm_fd);
>
> igt_display_require(&data.display, data.drm_fd);
> + igt_display_require_output(&data.display);
> }
>
> - for_each_pipe_static(data.pipe) {
> - igt_subtest_group {
> - igt_fixture {
> - igt_display_require_output_on_pipe(&data.display, data.pipe);
> - data.output = igt_get_single_output_for_pipe(&data.display, data.pipe);
> - }
> -
> - for (data.curw = 64; data.curw <= 256; data.curw *= 2) {
> - data.curh = data.curw;
> -
> - igt_fixture
> + igt_describe("Checking cursor by walking left/right/top/bottom edge of screen");
> + igt_subtest_group {
> + for (i = 0; i < ARRAY_SIZE(tests); i++) {
> + igt_subtest_with_dynamic(tests[i].name) {
> + for_each_pipe(&data.display, data.pipe) {
> igt_require(data.curw <= max_curw && data.curh <= max_curh);
> -
> - igt_describe("Checking cursor by walking left edge of screen");
> - igt_subtest_f("pipe-%s-%dx%d-left-edge",
> - kmstest_pipe_name(data.pipe),
> - data.curw, data.curh)
> - test_crtc(&data, EDGE_LEFT);
> -
> - igt_describe("Checking cursor by walking right edge of screen");
> - igt_subtest_f("pipe-%s-%dx%d-right-edge",
> - kmstest_pipe_name(data.pipe),
> - data.curw, data.curh)
> - test_crtc(&data, EDGE_RIGHT);
> -
> - igt_describe("Checking cursor by walking top edge of screen");
> - igt_subtest_f("pipe-%s-%dx%d-top-edge",
> - kmstest_pipe_name(data.pipe),
> - data.curw, data.curh)
> - test_crtc(&data, EDGE_TOP);
> -
> - igt_describe("Checking cursor by walking bottom edge of screen");
> - igt_subtest_f("pipe-%s-%dx%d-bottom-edge",
> - kmstest_pipe_name(data.pipe),
> - data.curw, data.curh)
> - test_crtc(&data, EDGE_BOTTOM);
> + data.output = igt_get_single_output_for_pipe(&data.display, data.pipe);
> +
> + for (data.curw = 64; data.curw <= 256; data.curw *= 2) {
> + data.curh = data.curw;
> + igt_dynamic_f("pipe-%s-%s-%dx%d",
> + kmstest_pipe_name(data.pipe),
> + data.output->name,
> + data.curw, data.curh)
> + test_crtc(&data, tests[i].flags);
> + }
> + }
> }
> }
> }
--
~Swati Sharma
More information about the igt-dev
mailing list