Message ID | 20211006071112.2206942-1-davidgow@google.com (mailing list archive) |
---|---|
State | New |
Delegated to: | Brendan Higgins |
Headers | show |
Series | kunit: Report test parameter results as (K)TAP subtests | expand |
On Wed, Oct 6, 2021 at 12:11 AM David Gow <davidgow@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. > displayed in the formatted results, and counted for test statistics. > > [1]: https://lore.kernel.org/linux-kselftest/CABVgOSnJAgWvTTABaF082LuYjAoAWzrBsyu9sT7x4GGMVsOD6Q@mail.gmail.com/ > [2]: https://lore.kernel.org/linux-kselftest/20211006001447.20919-1-dlatypov@google.com/ > > Signed-off-by: David Gow <davidgow@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 >
On Wed, Oct 6, 2021 at 1:32 PM Daniel Latypov <dlatypov@google.com> wrote: > > On Wed, Oct 6, 2021 at 12:11 AM David Gow <davidgow@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. > > displayed in the formatted results, and counted for test statistics. > > > > [1]: https://lore.kernel.org/linux-kselftest/CABVgOSnJAgWvTTABaF082LuYjAoAWzrBsyu9sT7x4GGMVsOD6Q@mail.gmail.com/ > > [2]: https://lore.kernel.org/linux-kselftest/20211006001447.20919-1-dlatypov@google.com/ > > > > Signed-off-by: David Gow <davidgow@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 > >
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);
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/CABVgOSnJAgWvTTABaF082LuYjAoAWzrBsyu9sT7x4GGMVsOD6Q@mail.gmail.com/ [2]: https://lore.kernel.org/linux-kselftest/20211006001447.20919-1-dlatypov@google.com/ Signed-off-by: David Gow <davidgow@google.com> --- lib/kunit/test.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)