Message ID | 20221123182558.2203639-2-rmoar@google.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp2955492wrr; Wed, 23 Nov 2022 10:30:06 -0800 (PST) X-Google-Smtp-Source: AA0mqf6Z2AgfF9ljzBLD3KCmnxTWpC3uIQNyoHBnNdP0/NVQLWOXQ3eLZJC7JX1FJrP00/UqzVvQ X-Received: by 2002:a17:902:eb82:b0:188:b44b:598 with SMTP id q2-20020a170902eb8200b00188b44b0598mr10486297plg.54.1669228206719; Wed, 23 Nov 2022 10:30:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669228206; cv=none; d=google.com; s=arc-20160816; b=0c1V4MiGobg8L2Fy0xKD84b+9JiQ3iua1ZlhmNMABg2Zzgi9WZtGk1FulpeXcCUSud HYECkslR/Z9XVoE5CPyf73LQtQY1rvMa8woVcxTbqtFM75D9NnmAnF2VwV3VpVFmPaAd vo/5OwxrQUuT8wHpxLFrUJFIZeIRkCdkomshwOmrjxnNQ/aYpg6XFRQgp29X28lpPlBd 0HX/+naHRAnfTtAqIBXhqTn+aUkn9d03RuklglQJ7QP86baLJqXfljM1CVBiLAMq1WYD mqb4lSLgJSEBNpXv29qVG3kCXpqFN9SU3jKy/t8IgNO+k/2HyLr6fNfABrtd8UHH9f3h ML+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:from:subject :message-id:references:mime-version:in-reply-to:date:dkim-signature; bh=Afz8PsANDnUvtBvSoF0QFvNdyMeaZ1ofX1YaO/pgZVM=; b=xDYHJC0zRZ96mo97iRrCxP/u9OR7CHn7EcQ491OslmIkrRjVB0Jy+BbopVPZml9rAP ii6eydv2//CmnbDa5PoBnHWu1kDXcWcwQrdwCVfvjuB6B+bAL1mrXtizvWJBIauO+6AZ sKkR530BMK5yfYAhWa/5bih2dxublxScE65BUBVts6mjuqhm6v2IL5n6nFWuWd0UDo1z pcxJb6k4jPWmKm5ZRd7hD/aBRZGJA5FHKjkCQr8Vr8qbKoXhKcacKOf7TP9XWU33+3cl bJmo16A5g5pq0TbPgodb4duLpBjTQjDX6aBT1I6vNYe2GVV+BQSuBDb/BeqYwF17jf9x xuvA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=sBiuo8a2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id i123-20020a625481000000b0052da2ea956csi15703257pfb.371.2022.11.23.10.29.52; Wed, 23 Nov 2022 10:30:06 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=sBiuo8a2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239097AbiKWS03 (ORCPT <rfc822;fengqi706@gmail.com> + 99 others); Wed, 23 Nov 2022 13:26:29 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54990 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239631AbiKWS0W (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Wed, 23 Nov 2022 13:26:22 -0500 Received: from mail-yw1-x114a.google.com (mail-yw1-x114a.google.com [IPv6:2607:f8b0:4864:20::114a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AFACC716FD for <linux-kernel@vger.kernel.org>; Wed, 23 Nov 2022 10:26:18 -0800 (PST) Received: by mail-yw1-x114a.google.com with SMTP id 00721157ae682-349423f04dbso174593727b3.13 for <linux-kernel@vger.kernel.org>; Wed, 23 Nov 2022 10:26:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:from:to:cc:subject:date:message-id :reply-to; bh=Afz8PsANDnUvtBvSoF0QFvNdyMeaZ1ofX1YaO/pgZVM=; b=sBiuo8a2cIxrSgYaooXOob5HMsTHvVXAiUBTZJ9mlC+f6Y0+nHeU645NZr8dij4w19 EnpZ3hLjNRGdS4OPRryWUEWC/tvr+pe3UYsOoO88O/FL5ZwGcrGlzuzCnpyxxq3Z/Ji/ mNenC1rJc23zXngdfoCpK1n7nMvrP3l+XcFA2MP0QbP+EuZE/7nXeSuonVHuS/I6cmwX BlBQMrpxofgI9snuABMtw32wVWrEL4StVttByA8MnLsKK/ZRC2+BZuThtI4XMs6voMll vbpxGbAdsaJqEkiJRvzD2UB3rlhd72xmL28QzmeD9jEGADIqMf4+JJz5miw7HxFldVnn NjDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=Afz8PsANDnUvtBvSoF0QFvNdyMeaZ1ofX1YaO/pgZVM=; b=nnAnrES83/3obSe7HdOTXYn+YGX6GdFNHZ8HJ5tYcIMRSc5IIusK8qEnWwiSHAhCfj 3OQO6/4bQ36sGcnSHvJpmPxn/HSQvOLIfXfLPa/Fi1g0lJeH0ZAf0cxm8x7oIIymvB+q X92sx9CgCA52iqK/fxLOiGoPWUlOxm18YL9qfn+XppI1ai0rVO4bkcX36u4h6/HgD4sJ A5JSprN4Bogq5Z0zD9uukSFx3Z3ld6K3Bdcc6Umd/HyNk+svNKGBl/8i29BG18Hk7B0C CU7EHpfYjxBFgG/gDEDUjvC/Azl6v35Ou2RAGMZSPlnZ8GuzKWYzEjUKOnYjrN6wtq/8 IkgA== X-Gm-Message-State: ANoB5pm692Z5P9OfosbRwIuIP+OUa3+yFGn2il6ZeU/PvP21bk0NO5IG BEmXEiMgudPgCm29lzSFLbGYAqJHPw== X-Received: from rmoar.c.googlers.com ([fda3:e722:ac3:cc00:2b:7d90:c0a8:4259]) (user=rmoar job=sendgmr) by 2002:a0d:e943:0:b0:38c:6e92:e2f9 with SMTP id s64-20020a0de943000000b0038c6e92e2f9mr4ywe.379.1669227977595; Wed, 23 Nov 2022 10:26:17 -0800 (PST) Date: Wed, 23 Nov 2022 18:25:58 +0000 In-Reply-To: <20221123182558.2203639-1-rmoar@google.com> Mime-Version: 1.0 References: <20221123182558.2203639-1-rmoar@google.com> X-Mailer: git-send-email 2.38.1.584.g0f3c55d4c2-goog Message-ID: <20221123182558.2203639-2-rmoar@google.com> Subject: [PATCH v3 2/2] kunit: improve KTAP compliance of KUnit test output From: Rae Moar <rmoar@google.com> To: brendanhiggins@google.com, davidgow@google.com, dlatypov@google.com Cc: skhan@linuxfoundation.org, mauro.chehab@linux.intel.com, kunit-dev@googlegroups.com, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, isabbasso@riseup.net, anders.roxell@linaro.org, Rae Moar <rmoar@google.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1750312636137422914?= X-GMAIL-MSGID: =?utf-8?q?1750312636137422914?= |
Series |
[v3,1/2] kunit: tool: parse KTAP compliant test output
|
|
Commit Message
Rae Moar
Nov. 23, 2022, 6:25 p.m. UTC
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@google.com> Reviewed-by: Daniel Latypov <dlatypov@google.com> Reviewed-by: David Gow <davidgow@google.com> --- Changes since v2: https://lore.kernel.org/all/20221121184743.1123556-2-rmoar@google.com/ - Made fixes discussed on the v2 patch to now correctly output test results after second level testing Changes since v1: https://lore.kernel.org/all/20221104194705.3245738-1-rmoar@google.com/ - Switch order of patches to make changes to the parser before making changes to the test output - Change location of the new KTAP version line in subtest header to be before the subtest header line lib/kunit/debugfs.c | 2 +- lib/kunit/executor.c | 6 +++--- lib/kunit/test.c | 9 ++++++--- 3 files changed, 10 insertions(+), 7 deletions(-)
Comments
On Thu, Nov 24, 2022 at 2:26 AM Rae Moar <rmoar@google.com> 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@google.com> > Reviewed-by: Daniel Latypov <dlatypov@google.com> > Reviewed-by: David Gow <davidgow@google.com> > --- > > Changes since v2: > https://lore.kernel.org/all/20221121184743.1123556-2-rmoar@google.com/ > - Made fixes discussed on the v2 patch to now correctly output test > results after second level testing > > Changes since v1: > https://lore.kernel.org/all/20221104194705.3245738-1-rmoar@google.com/ > - Switch order of patches to make changes to the parser before making > changes to the test output > - Change location of the new KTAP version line in subtest header to be > before the subtest header line > Thanks for fixing those. This looks good to me now. I'm not aware of anyone who's actively parsing KUnit test results who'd be broken by this (IIRC, all the CI systems are just grepping for 'ok' / 'not ok' or actually using kunit.py to parse.) Reviewed-by: David Gow <davidgow@google.com> Cheers, -- David > lib/kunit/debugfs.c | 2 +- > lib/kunit/executor.c | 6 +++--- > lib/kunit/test.c | 9 ++++++--- > 3 files changed, 10 insertions(+), 7 deletions(-) > > 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/executor.c b/lib/kunit/executor.c > index 9bbc422c284b..74982b83707c 100644 > --- a/lib/kunit/executor.c > +++ b/lib/kunit/executor.c > @@ -166,7 +166,7 @@ static void kunit_exec_run_tests(struct suite_set *suite_set) > { > size_t num_suites = suite_set->end - suite_set->start; > > - pr_info("TAP version 14\n"); > + pr_info("KTAP version 1\n"); > pr_info("1..%zu\n", num_suites); > > __kunit_test_suites_init(suite_set->start, num_suites); > @@ -177,8 +177,8 @@ static void kunit_exec_list_tests(struct suite_set *suite_set) > struct kunit_suite * const *suites; > struct kunit_case *test_case; > > - /* Hack: print a tap header so kunit.py can find the start of KUnit output. */ > - pr_info("TAP version 14\n"); > + /* Hack: print a ktap header so kunit.py can find the start of KUnit output. */ > + pr_info("KTAP version 1\n"); > > for (suites = suite_set->start; suites < suite_set->end; suites++) > kunit_suite_for_each_test_case((*suites), test_case) { > diff --git a/lib/kunit/test.c b/lib/kunit/test.c > index 90640a43cf62..1c9d8d962d67 100644 > --- a/lib/kunit/test.c > +++ b/lib/kunit/test.c > @@ -149,6 +149,7 @@ EXPORT_SYMBOL_GPL(kunit_suite_num_test_cases); > > static void kunit_print_suite_start(struct kunit_suite *suite) > { > + kunit_log(KERN_INFO, suite, KUNIT_SUBTEST_INDENT "KTAP version 1\n"); > kunit_log(KERN_INFO, suite, KUNIT_SUBTEST_INDENT "# Subtest: %s", > suite->name); > kunit_log(KERN_INFO, suite, KUNIT_SUBTEST_INDENT "1..%zd", > @@ -175,13 +176,13 @@ static void kunit_print_ok_not_ok(void *test_or_suite, > * representation. > */ > if (suite) > - pr_info("%s %zd - %s%s%s\n", > + pr_info("%s %zd %s%s%s\n", > kunit_status_to_ok_not_ok(status), > test_number, description, directive_header, > (status == KUNIT_SKIPPED) ? directive : ""); > else > kunit_log(KERN_INFO, test, > - KUNIT_SUBTEST_INDENT "%s %zd - %s%s%s", > + KUNIT_SUBTEST_INDENT "%s %zd %s%s%s", > kunit_status_to_ok_not_ok(status), > test_number, description, directive_header, > (status == KUNIT_SKIPPED) ? directive : ""); > @@ -542,6 +543,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 > + "KTAP version 1\n"); > kunit_log(KERN_INFO, &test, KUNIT_SUBTEST_INDENT KUNIT_SUBTEST_INDENT > "# Subtest: %s", test_case->name); > > @@ -555,7 +558,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); > > -- > 2.38.1.584.g0f3c55d4c2-goog >
On Wed, 23 Nov 2022 at 19:26, Rae Moar <rmoar@google.com> 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@google.com> > Reviewed-by: Daniel Latypov <dlatypov@google.com> > Reviewed-by: David Gow <davidgow@google.com> Tested-by: Anders Roxell <anders.roxell@linaro.org> Cheers, Anders > --- > > Changes since v2: > https://lore.kernel.org/all/20221121184743.1123556-2-rmoar@google.com/ > - Made fixes discussed on the v2 patch to now correctly output test > results after second level testing > > Changes since v1: > https://lore.kernel.org/all/20221104194705.3245738-1-rmoar@google.com/ > - Switch order of patches to make changes to the parser before making > changes to the test output > - Change location of the new KTAP version line in subtest header to be > before the subtest header line > > lib/kunit/debugfs.c | 2 +- > lib/kunit/executor.c | 6 +++--- > lib/kunit/test.c | 9 ++++++--- > 3 files changed, 10 insertions(+), 7 deletions(-) > > 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/executor.c b/lib/kunit/executor.c > index 9bbc422c284b..74982b83707c 100644 > --- a/lib/kunit/executor.c > +++ b/lib/kunit/executor.c > @@ -166,7 +166,7 @@ static void kunit_exec_run_tests(struct suite_set *suite_set) > { > size_t num_suites = suite_set->end - suite_set->start; > > - pr_info("TAP version 14\n"); > + pr_info("KTAP version 1\n"); > pr_info("1..%zu\n", num_suites); > > __kunit_test_suites_init(suite_set->start, num_suites); > @@ -177,8 +177,8 @@ static void kunit_exec_list_tests(struct suite_set *suite_set) > struct kunit_suite * const *suites; > struct kunit_case *test_case; > > - /* Hack: print a tap header so kunit.py can find the start of KUnit output. */ > - pr_info("TAP version 14\n"); > + /* Hack: print a ktap header so kunit.py can find the start of KUnit output. */ > + pr_info("KTAP version 1\n"); > > for (suites = suite_set->start; suites < suite_set->end; suites++) > kunit_suite_for_each_test_case((*suites), test_case) { > diff --git a/lib/kunit/test.c b/lib/kunit/test.c > index 90640a43cf62..1c9d8d962d67 100644 > --- a/lib/kunit/test.c > +++ b/lib/kunit/test.c > @@ -149,6 +149,7 @@ EXPORT_SYMBOL_GPL(kunit_suite_num_test_cases); > > static void kunit_print_suite_start(struct kunit_suite *suite) > { > + kunit_log(KERN_INFO, suite, KUNIT_SUBTEST_INDENT "KTAP version 1\n"); > kunit_log(KERN_INFO, suite, KUNIT_SUBTEST_INDENT "# Subtest: %s", > suite->name); > kunit_log(KERN_INFO, suite, KUNIT_SUBTEST_INDENT "1..%zd", > @@ -175,13 +176,13 @@ static void kunit_print_ok_not_ok(void *test_or_suite, > * representation. > */ > if (suite) > - pr_info("%s %zd - %s%s%s\n", > + pr_info("%s %zd %s%s%s\n", > kunit_status_to_ok_not_ok(status), > test_number, description, directive_header, > (status == KUNIT_SKIPPED) ? directive : ""); > else > kunit_log(KERN_INFO, test, > - KUNIT_SUBTEST_INDENT "%s %zd - %s%s%s", > + KUNIT_SUBTEST_INDENT "%s %zd %s%s%s", > kunit_status_to_ok_not_ok(status), > test_number, description, directive_header, > (status == KUNIT_SKIPPED) ? directive : ""); > @@ -542,6 +543,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 > + "KTAP version 1\n"); > kunit_log(KERN_INFO, &test, KUNIT_SUBTEST_INDENT KUNIT_SUBTEST_INDENT > "# Subtest: %s", test_case->name); > > @@ -555,7 +558,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); > > -- > 2.38.1.584.g0f3c55d4c2-goog >
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/executor.c b/lib/kunit/executor.c index 9bbc422c284b..74982b83707c 100644 --- a/lib/kunit/executor.c +++ b/lib/kunit/executor.c @@ -166,7 +166,7 @@ static void kunit_exec_run_tests(struct suite_set *suite_set) { size_t num_suites = suite_set->end - suite_set->start; - pr_info("TAP version 14\n"); + pr_info("KTAP version 1\n"); pr_info("1..%zu\n", num_suites); __kunit_test_suites_init(suite_set->start, num_suites); @@ -177,8 +177,8 @@ static void kunit_exec_list_tests(struct suite_set *suite_set) struct kunit_suite * const *suites; struct kunit_case *test_case; - /* Hack: print a tap header so kunit.py can find the start of KUnit output. */ - pr_info("TAP version 14\n"); + /* Hack: print a ktap header so kunit.py can find the start of KUnit output. */ + pr_info("KTAP version 1\n"); for (suites = suite_set->start; suites < suite_set->end; suites++) kunit_suite_for_each_test_case((*suites), test_case) { diff --git a/lib/kunit/test.c b/lib/kunit/test.c index 90640a43cf62..1c9d8d962d67 100644 --- a/lib/kunit/test.c +++ b/lib/kunit/test.c @@ -149,6 +149,7 @@ EXPORT_SYMBOL_GPL(kunit_suite_num_test_cases); static void kunit_print_suite_start(struct kunit_suite *suite) { + kunit_log(KERN_INFO, suite, KUNIT_SUBTEST_INDENT "KTAP version 1\n"); kunit_log(KERN_INFO, suite, KUNIT_SUBTEST_INDENT "# Subtest: %s", suite->name); kunit_log(KERN_INFO, suite, KUNIT_SUBTEST_INDENT "1..%zd", @@ -175,13 +176,13 @@ static void kunit_print_ok_not_ok(void *test_or_suite, * representation. */ if (suite) - pr_info("%s %zd - %s%s%s\n", + pr_info("%s %zd %s%s%s\n", kunit_status_to_ok_not_ok(status), test_number, description, directive_header, (status == KUNIT_SKIPPED) ? directive : ""); else kunit_log(KERN_INFO, test, - KUNIT_SUBTEST_INDENT "%s %zd - %s%s%s", + KUNIT_SUBTEST_INDENT "%s %zd %s%s%s", kunit_status_to_ok_not_ok(status), test_number, description, directive_header, (status == KUNIT_SKIPPED) ? directive : ""); @@ -542,6 +543,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 + "KTAP version 1\n"); kunit_log(KERN_INFO, &test, KUNIT_SUBTEST_INDENT KUNIT_SUBTEST_INDENT "# Subtest: %s", test_case->name); @@ -555,7 +558,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);