Re: [PATCH v2 2/2] kunit: improve KTAP compliance of KUnit test output

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 22, 2022 at 1:17 AM Anders Roxell <anders.roxell@xxxxxxxxxx> wrote:
>
> On Mon, 21 Nov 2022 at 19:48, Rae Moar <rmoar@xxxxxxxxxx> wrote:
> >
> > Change KUnit test output to better comply with KTAP v1 specifications
> > found here: https://kernel.org/doc/html/latest/dev-tools/ktap.html.
> > 1) Use "KTAP version 1" instead of "TAP version 14" as test output header
> > 2) Remove '-' between test number and test name on test result lines
> > 2) Add KTAP version lines to each subtest header as well
> >
> > Note that the new KUnit output still includes the “# Subtest” line now
> > located after the KTAP version line. This does not completely match the
> > KTAP v1 spec but since it is classified as a diagnostic line, it is not
> > expected to be disruptive or break any existing parsers. This
> > “# Subtest” line comes from the TAP 14 spec
> > (https://testanything.org/tap-version-14-specification.html)
> > and it is used to define the test name before the results.
> >
> > Original output:
> >
> >  TAP version 14
> >  1..1
> >    # Subtest: kunit-test-suite
> >    1..3
> >    ok 1 - kunit_test_1
> >    ok 2 - kunit_test_2
> >    ok 3 - kunit_test_3
> >  # kunit-test-suite: pass:3 fail:0 skip:0 total:3
> >  # Totals: pass:3 fail:0 skip:0 total:3
> >  ok 1 - kunit-test-suite
> >
> > New output:
> >
> >  KTAP version 1
> >  1..1
> >    KTAP version 1
> >    # Subtest: kunit-test-suite
> >    1..3
> >    ok 1 kunit_test_1
> >    ok 2 kunit_test_2
> >    ok 3 kunit_test_3
> >  # kunit-test-suite: pass:3 fail:0 skip:0 total:3
> >  # Totals: pass:3 fail:0 skip:0 total:3
> >  ok 1 kunit-test-suite
> >
> > Signed-off-by: Rae Moar <rmoar@xxxxxxxxxx>
> > Reviewed-by: Daniel Latypov <dlatypov@xxxxxxxxxx>
> > Reviewed-by: David Gow <davidgow@xxxxxxxxxx>
>
> I tried this patch, see the full boot log [1] and I can still see some
>  tests that output the "old" format with 'ok 1 - kunit_test_1', for example
>
> ok 1 - 1901-12-13 Lower bound of 32bit < 0 timestamp, no extra bits
>
> Isn't this something that should be converted too?

Yes, thanks for catching that.
That's what I get from only looking over the diff this time since I
thought I remembered the code...

We also want this diff to fix a) debugfs, b) subtests.

diff --git a/lib/kunit/debugfs.c b/lib/kunit/debugfs.c
index 1048ef1b8d6e..de0ee2e03ed6 100644
--- a/lib/kunit/debugfs.c
+++ b/lib/kunit/debugfs.c
@@ -63,7 +63,7 @@ static int debugfs_print_results(struct seq_file
*seq, void *v)
        kunit_suite_for_each_test_case(suite, test_case)
                debugfs_print_result(seq, suite, test_case);

-       seq_printf(seq, "%s %d - %s\n",
+       seq_printf(seq, "%s %d %s\n",
                   kunit_status_to_ok_not_ok(success), 1, suite->name);
        return 0;
 }
diff --git a/lib/kunit/test.c b/lib/kunit/test.c
index 19344cb501c5..c9d57a1d9524 100644
--- a/lib/kunit/test.c
+++ b/lib/kunit/test.c
@@ -556,7 +556,7 @@ int kunit_run_tests(struct kunit_suite *suite)

                                kunit_log(KERN_INFO, &test,
                                          KUNIT_SUBTEST_INDENT
KUNIT_SUBTEST_INDENT
-                                         "%s %d - %s",
+                                         "%s %d %s",

kunit_status_to_ok_not_ok(test.status),
                                          test.param_index + 1, param_desc);

Daniel




[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux