[PATCH] kunit: Report test parameter results as (K)TAP subtests

0 views
Skip to first unread message

David Gow

unread,
Oct 6, 2021, 3:11:29 AM10/6/21
to Brendan Higgins, Rae Moar, Daniel Latypov, Shuah Khan, kuni...@googlegroups.com, linux-k...@vger.kernel.org, linux-...@vger.kernel.org, David Gow
Currently, the results for individial parameters in a parameterised test
are simply output as (K)TAP diagnostic lines. However, the plan was
always[1] to make these (K)TAP subtests when kunit_tool supported them.

With [2], these are now supported. (v5 will print out an error about the
missing plan line, but this can safely be ignored, and will hopefully be
changed). As a result, individual test parameter results are parsed,
displayed in the formatted results, and counted for test statistics.

[1]: https://lore.kernel.org/linux-kselftest/CABVgOSnJAgWvTTABaF082LuY...@mail.gmail.com/
[2]: https://lore.kernel.org/linux-kselftest/20211006001447....@google.com/

Signed-off-by: David Gow <davi...@google.com>
---
lib/kunit/test.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/lib/kunit/test.c b/lib/kunit/test.c
index f246b847024e..02a9fdadcae2 100644
--- a/lib/kunit/test.c
+++ b/lib/kunit/test.c
@@ -508,6 +508,8 @@ int kunit_run_tests(struct kunit_suite *suite)
/* Get initial param. */
param_desc[0] = '\0';
test.param_value = test_case->generate_params(NULL, param_desc);
+ kunit_log(KERN_INFO, &test, KUNIT_SUBTEST_INDENT KUNIT_SUBTEST_INDENT
+ "# Subtest: %s", test_case->name);
}

do {
@@ -520,9 +522,8 @@ int kunit_run_tests(struct kunit_suite *suite)
}

kunit_log(KERN_INFO, &test,
- KUNIT_SUBTEST_INDENT
- "# %s: %s %d - %s",
- test_case->name,
+ KUNIT_SUBTEST_INDENT KUNIT_SUBTEST_INDENT
+ "%s %d - %s",
kunit_status_to_ok_not_ok(test.status),
test.param_index + 1, param_desc);

--
2.33.0.800.g4c38ced690-goog

Daniel Latypov

unread,
Oct 6, 2021, 4:32:36 PM10/6/21
to David Gow, Brendan Higgins, Rae Moar, Shuah Khan, kuni...@googlegroups.com, linux-k...@vger.kernel.org, linux-...@vger.kernel.org
On Wed, Oct 6, 2021 at 12:11 AM David Gow <davi...@google.com> wrote:
>
> Currently, the results for individial parameters in a parameterised test
> are simply output as (K)TAP diagnostic lines. However, the plan was
> always[1] to make these (K)TAP subtests when kunit_tool supported them.
>
> With [2], these are now supported. (v5 will print out an error about the
> missing plan line, but this can safely be ignored, and will hopefully be
> changed). As a result, individual test parameter results are parsed,

Hmm, I'd rather not condition users to ignore warnings.
It's possible we can get this all fixed up in time for 5.16, but we
have quite a bit we're trying to get in already, so I'm not sure.

Brendan Higgins

unread,
Oct 6, 2021, 4:57:30 PM10/6/21
to Daniel Latypov, David Gow, Rae Moar, Shuah Khan, kuni...@googlegroups.com, linux-k...@vger.kernel.org, linux-...@vger.kernel.org
On Wed, Oct 6, 2021 at 1:32 PM Daniel Latypov <dlat...@google.com> wrote:
>
> On Wed, Oct 6, 2021 at 12:11 AM David Gow <davi...@google.com> wrote:
> >
> > Currently, the results for individial parameters in a parameterised test
> > are simply output as (K)TAP diagnostic lines. However, the plan was
> > always[1] to make these (K)TAP subtests when kunit_tool supported them.
> >
> > With [2], these are now supported. (v5 will print out an error about the
> > missing plan line, but this can safely be ignored, and will hopefully be
> > changed). As a result, individual test parameter results are parsed,
>
> Hmm, I'd rather not condition users to ignore warnings.
> It's possible we can get this all fixed up in time for 5.16, but we
> have quite a bit we're trying to get in already, so I'm not sure.

I agree with Daniel. I think we should just get that fixed first. I
will poke Shuah to start applying patches for 5.16 to give us a place
to work.
Reply all
Reply to author
Forward
0 new messages