From: "Maíra Canal" <mairacanal@riseup.net> To: "Isabella Basso" <isabbasso@riseup.net>, magalilemes00@gmail.com, tales.aparecida@gmail.com, mwen@igalia.com, andrealmeid@riseup.net, siqueirajordao@riseup.net, "Trevor Woerner" <twoerner@gmail.com>, "Daniel Vetter" <daniel@ffwll.ch>, "David Airlie" <airlied@linux.ie>, "Javier Martinez Canillas" <javierm@redhat.com>, "David Gow" <davidgow@google.com>, brendanhiggins@google.com, "Arthur Grillo" <arthur.grillo@usp.br>, michal.winiarski@intel.com, "José Expósito" <jose.exposito89@gmail.com> Cc: kunit-dev@googlegroups.com, linux-kselftest@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, "Maíra Canal" <mairacanal@riseup.net> Subject: [PATCH 1/2] drm/tests: Split drm_framebuffer_create_test into parameterized tests Date: Tue, 30 Aug 2022 18:16:02 -0300 [thread overview] Message-ID: <20220830211603.191734-1-mairacanal@riseup.net> (raw) The igt_check_drm_framebuffer_create is based on a loop that executes tests for all createbuffer_tests test cases. This could be better represented by parameterized tests, provided by KUnit. So, convert the igt_check_drm_framebuffer_create test into parameterized tests. Signed-off-by: Maíra Canal <mairacanal@riseup.net> --- drivers/gpu/drm/tests/drm_framebuffer_test.c | 23 +++++++++----------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/tests/drm_framebuffer_test.c b/drivers/gpu/drm/tests/drm_framebuffer_test.c index ec7a08ba4056..3e46fd9f6615 100644 --- a/drivers/gpu/drm/tests/drm_framebuffer_test.c +++ b/drivers/gpu/drm/tests/drm_framebuffer_test.c @@ -25,7 +25,7 @@ struct drm_framebuffer_test { const char *name; }; -static struct drm_framebuffer_test createbuffer_tests[] = { +static const struct drm_framebuffer_test drm_framebuffer_create_cases[] = { { .buffer_created = 1, .name = "ABGR8888 normal sizes", .cmd = { .width = 600, .height = 600, .pixel_format = DRM_FORMAT_ABGR8888, .handles = { 1, 0, 0 }, .pitches = { 4 * 600, 0, 0 }, @@ -340,28 +340,25 @@ static struct drm_device mock_drm_device = { }, }; -static int execute_drm_mode_fb_cmd2(struct drm_mode_fb_cmd2 *r) +static void drm_framebuffer_create_test(struct kunit *test) { + const struct drm_framebuffer_test *params = test->param_value; int buffer_created = 0; mock_drm_device.dev_private = &buffer_created; - drm_internal_framebuffer_create(&mock_drm_device, r, NULL); - return buffer_created; + drm_internal_framebuffer_create(&mock_drm_device, ¶ms->cmd, NULL); + KUNIT_EXPECT_EQ(test, params->buffer_created, buffer_created); } -static void igt_check_drm_framebuffer_create(struct kunit *test) +static void drm_framebuffer_to_desc(const struct drm_framebuffer_test *t, char *desc) { - int i = 0; - - for (i = 0; i < ARRAY_SIZE(createbuffer_tests); i++) { - KUNIT_EXPECT_EQ_MSG(test, createbuffer_tests[i].buffer_created, - execute_drm_mode_fb_cmd2(&createbuffer_tests[i].cmd), - "Test %d: \"%s\" failed\n", i, createbuffer_tests[i].name); - } + strcpy(desc, t->name); } +KUNIT_ARRAY_PARAM(drm_framebuffer_create, drm_framebuffer_create_cases, drm_framebuffer_to_desc); + static struct kunit_case drm_framebuffer_tests[] = { - KUNIT_CASE(igt_check_drm_framebuffer_create), + KUNIT_CASE_PARAM(drm_framebuffer_create_test, drm_framebuffer_create_gen_params), { } }; -- 2.37.2
WARNING: multiple messages have this Message-ID (diff)
From: "Maíra Canal" <mairacanal@riseup.net> To: "Isabella Basso" <isabbasso@riseup.net>, magalilemes00@gmail.com, tales.aparecida@gmail.com, mwen@igalia.com, andrealmeid@riseup.net, siqueirajordao@riseup.net, "Trevor Woerner" <twoerner@gmail.com>, "Daniel Vetter" <daniel@ffwll.ch>, "David Airlie" <airlied@linux.ie>, "Javier Martinez Canillas" <javierm@redhat.com>, "David Gow" <davidgow@google.com>, brendanhiggins@google.com, "Arthur Grillo" <arthur.grillo@usp.br>, michal.winiarski@intel.com, "José Expósito" <jose.exposito89@gmail.com> Cc: linux-kernel@vger.kernel.org, "Maíra Canal" <mairacanal@riseup.net>, dri-devel@lists.freedesktop.org, linux-kselftest@vger.kernel.org, kunit-dev@googlegroups.com Subject: [PATCH 1/2] drm/tests: Split drm_framebuffer_create_test into parameterized tests Date: Tue, 30 Aug 2022 18:16:02 -0300 [thread overview] Message-ID: <20220830211603.191734-1-mairacanal@riseup.net> (raw) The igt_check_drm_framebuffer_create is based on a loop that executes tests for all createbuffer_tests test cases. This could be better represented by parameterized tests, provided by KUnit. So, convert the igt_check_drm_framebuffer_create test into parameterized tests. Signed-off-by: Maíra Canal <mairacanal@riseup.net> --- drivers/gpu/drm/tests/drm_framebuffer_test.c | 23 +++++++++----------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/drivers/gpu/drm/tests/drm_framebuffer_test.c b/drivers/gpu/drm/tests/drm_framebuffer_test.c index ec7a08ba4056..3e46fd9f6615 100644 --- a/drivers/gpu/drm/tests/drm_framebuffer_test.c +++ b/drivers/gpu/drm/tests/drm_framebuffer_test.c @@ -25,7 +25,7 @@ struct drm_framebuffer_test { const char *name; }; -static struct drm_framebuffer_test createbuffer_tests[] = { +static const struct drm_framebuffer_test drm_framebuffer_create_cases[] = { { .buffer_created = 1, .name = "ABGR8888 normal sizes", .cmd = { .width = 600, .height = 600, .pixel_format = DRM_FORMAT_ABGR8888, .handles = { 1, 0, 0 }, .pitches = { 4 * 600, 0, 0 }, @@ -340,28 +340,25 @@ static struct drm_device mock_drm_device = { }, }; -static int execute_drm_mode_fb_cmd2(struct drm_mode_fb_cmd2 *r) +static void drm_framebuffer_create_test(struct kunit *test) { + const struct drm_framebuffer_test *params = test->param_value; int buffer_created = 0; mock_drm_device.dev_private = &buffer_created; - drm_internal_framebuffer_create(&mock_drm_device, r, NULL); - return buffer_created; + drm_internal_framebuffer_create(&mock_drm_device, ¶ms->cmd, NULL); + KUNIT_EXPECT_EQ(test, params->buffer_created, buffer_created); } -static void igt_check_drm_framebuffer_create(struct kunit *test) +static void drm_framebuffer_to_desc(const struct drm_framebuffer_test *t, char *desc) { - int i = 0; - - for (i = 0; i < ARRAY_SIZE(createbuffer_tests); i++) { - KUNIT_EXPECT_EQ_MSG(test, createbuffer_tests[i].buffer_created, - execute_drm_mode_fb_cmd2(&createbuffer_tests[i].cmd), - "Test %d: \"%s\" failed\n", i, createbuffer_tests[i].name); - } + strcpy(desc, t->name); } +KUNIT_ARRAY_PARAM(drm_framebuffer_create, drm_framebuffer_create_cases, drm_framebuffer_to_desc); + static struct kunit_case drm_framebuffer_tests[] = { - KUNIT_CASE(igt_check_drm_framebuffer_create), + KUNIT_CASE_PARAM(drm_framebuffer_create_test, drm_framebuffer_create_gen_params), { } }; -- 2.37.2
next reply other threads:[~2022-08-30 21:16 UTC|newest] Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-08-30 21:16 Maíra Canal [this message] 2022-08-30 21:16 ` [PATCH 1/2] drm/tests: Split drm_framebuffer_create_test into parameterized tests Maíra Canal 2022-08-30 21:16 ` [PATCH 2/2] drm/tests: Change "igt_" prefix to "drm_" Maíra Canal 2022-08-30 21:16 ` Maíra Canal 2022-08-31 9:30 ` Jani Nikula 2022-08-31 9:30 ` Jani Nikula 2022-08-31 17:30 ` Maíra Canal 2022-08-31 17:30 ` Maíra Canal 2022-08-31 17:39 ` Jani Nikula 2022-08-31 17:39 ` Jani Nikula 2022-09-02 7:52 ` David Gow 2022-09-02 7:52 ` David Gow 2022-08-31 10:49 ` [PATCH 1/2] drm/tests: Split drm_framebuffer_create_test into parameterized tests Michał Winiarski 2022-08-31 10:49 ` Michał Winiarski
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220830211603.191734-1-mairacanal@riseup.net \ --to=mairacanal@riseup.net \ --cc=airlied@linux.ie \ --cc=andrealmeid@riseup.net \ --cc=arthur.grillo@usp.br \ --cc=brendanhiggins@google.com \ --cc=daniel@ffwll.ch \ --cc=davidgow@google.com \ --cc=dri-devel@lists.freedesktop.org \ --cc=isabbasso@riseup.net \ --cc=javierm@redhat.com \ --cc=jose.exposito89@gmail.com \ --cc=kunit-dev@googlegroups.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-kselftest@vger.kernel.org \ --cc=magalilemes00@gmail.com \ --cc=michal.winiarski@intel.com \ --cc=mwen@igalia.com \ --cc=siqueirajordao@riseup.net \ --cc=tales.aparecida@gmail.com \ --cc=twoerner@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.