[igt-dev] [PATCH i-g-t v3] kms_flip_event_leak: Create dynamic subtests
Petri Latvala
petri.latvala at intel.com
Tue Sep 20 08:21:47 UTC 2022
On Tue, Sep 20, 2022 at 01:27:37PM +0530, Jeevan B wrote:
> Converting the existing subtests to dynamic subtests.
>
> v2: Add igt_dispaly_require_output and igt_display_reset and update the
> test name. (Bhanu)
>
> Signed-off-by: Jeevan B <jeevan.b at intel.com>
> Reviewed-by: Bhanuprakash Modem <bhanuprakash.modem at intel.com>
> ---
> tests/kms_flip_event_leak.c | 29 ++++++++++++++++++-----------
> 1 file changed, 18 insertions(+), 11 deletions(-)
>
> diff --git a/tests/kms_flip_event_leak.c b/tests/kms_flip_event_leak.c
> index ac201293..99b1e345 100644
> --- a/tests/kms_flip_event_leak.c
> +++ b/tests/kms_flip_event_leak.c
> @@ -48,6 +48,7 @@ static void test(data_t *data, enum pipe pipe, igt_output_t *output)
> struct igt_fb fb[2];
> int fd, ret;
>
> + igt_display_reset(&data->display);
> /* select the pipe we want to use */
> igt_output_set_pipe(output, pipe);
>
> @@ -89,24 +90,30 @@ 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);
> -
> - for_each_pipe_with_valid_output(&data.display, pipe, output) {
> - test(&data, pipe, output);
> - valid_tests++;
> + igt_display_require(&data.display, data.drm_fd);
> + igt_display_require_output(&data.display);
> }
>
> - igt_require_f(valid_tests, "no valid crtc/connector combinations found\n");
>
> - igt_display_fini(&data.display);
> + igt_subtest_with_dynamic("kms_flip_event_leak_basic") {
This ends up being
igt at kms_flip_event_leak@kms_flip_event_leak_basic. Just call this
subtest "basic", don't repeat.
--
Petri Latvala
> + for_each_pipe_with_valid_output(&data.display, pipe, output) {
> + igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), igt_output_name(output)) {
> + test(&data, pipe, output);
> + }
> + }
> + }
> +
> + igt_fixture {
> + igt_display_fini(&data.display);
> + }
> }
> --
> 2.36.0
>
More information about the igt-dev
mailing list