On Thu, Jun 26, 2025 at 2:10 AM Thomas Weißschuh
<thomas.weissschuh@linutronix.de> wrote:
>
> Currently there is no test validating the result reporting from nested
> tests. Add one, it will also be used to validate upcoming changes to the
> nested test parsing.
Hello!
This patch looks good to me! However, most of the tests in
kunit-tool-test do check nested test output but we do lack checks for
failing tests. Could we change this commit description to be something
like: "Currently there is a lack of tests validating failed results
reporting from nested tests."?
Reviewed-by: Rae Moar <rmoar@google.com>
Thanks!
-Rae
>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
> Reviewed-by: David Gow <davidgow@google.com>
> ---
> tools/testing/kunit/kunit_tool_test.py | 10 ++++++++++
> .../kunit/test_data/test_is_test_passed-failure-nested.log | 7 +++++++
> 2 files changed, 17 insertions(+)
>
> diff --git a/tools/testing/kunit/kunit_tool_test.py b/tools/testing/kunit/kunit_tool_test.py
> index bbba921e0eacb18663abfcabb2bccf330d8666f5..b74dc05fc2fe5b3ff629172fc7aafeb5c3d29fb3 100755
> --- a/tools/testing/kunit/kunit_tool_test.py
> +++ b/tools/testing/kunit/kunit_tool_test.py
> @@ -165,6 +165,16 @@ class KUnitParserTest(unittest.TestCase):
> self.assertEqual(kunit_parser.TestStatus.FAILURE, result.status)
> self.assertEqual(result.counts.errors, 0)
>
> + def test_parse_failed_nested_tests_log(self):
> + nested_log = test_data_path('test_is_test_passed-failure-nested.log')
> + with open(nested_log) as file:
> + result = kunit_parser.parse_run_tests(file.readlines(), stdout)
> + self.assertEqual(kunit_parser.TestStatus.FAILURE, result.status)
> + self.assertEqual(result.counts.failed, 2)
> + self.assertEqual(kunit_parser.TestStatus.FAILURE, result.subtests[0].status)
> + self.assertEqual(kunit_parser.TestStatus.FAILURE, result.subtests[1].status)
> + self.assertEqual(kunit_parser.TestStatus.FAILURE, result.subtests[1].subtests[0].status)
> +
> def test_no_header(self):
> empty_log = test_data_path('test_is_test_passed-no_tests_run_no_header.log')
> with open(empty_log) as file:
> diff --git a/tools/testing/kunit/test_data/test_is_test_passed-failure-nested.log b/tools/testing/kunit/test_data/test_is_test_passed-failure-nested.log
> new file mode 100644
> index 0000000000000000000000000000000000000000..2e528da39ab5b2be0fca6cf9160c10929fba3c9e
> --- /dev/null
> +++ b/tools/testing/kunit/test_data/test_is_test_passed-failure-nested.log
> @@ -0,0 +1,7 @@
> +KTAP version 1
> +1..2
> +not ok 1 subtest 1
> + KTAP version 1
> + 1..1
> + not ok 1 subsubtest 1
> +not ok 2 subtest 2
>
> --
> 2.50.0
>