Message ID | 20221111031855.592333-1-dlatypov@google.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 0a7d5c30b7f02887319a1382fbb8dc1c8250fe2c |
Delegated to: | Brendan Higgins |
Headers | show |
Series | kunit: tool: tweak error message when no KTAP found | expand |
On Fri, Nov 11, 2022 at 11:19 AM Daniel Latypov <dlatypov@google.com> wrote: > > We currently tell people we "couldn't find any KTAP output" with no > indication as to what this might mean. > > After this patch, we get: > > $ ./tools/testing/kunit/kunit.py parse /dev/null > ============================================================ > [ERROR] Test: <missing>: Could not find any KTAP output. Did any KUnit tests run? > ============================================================ > Testing complete. Ran 0 tests: errors: 1 > > Note: we could try and generate a more verbose message like > > Please check .kunit/test.log to see the raw kernel output. > or the like, but we'd need to know what the build dir was to know where > test.log actually lives. > > This patch tries to make a more minimal improvement. > > Signed-off-by: Daniel Latypov <dlatypov@google.com> > --- I agree that this is clearer. One minor nitpick is that we still have the (useless) 'Test: <missing>:' prefix, which also makes the error much longer than the '===' dividers. I think the error would be more aesthetically pleasing if we could fix that. That's a very minor point, though, so regardless: Reviewed-by: David Gow <davidgow@google.com> Cheers, -- David > tools/testing/kunit/kunit_parser.py | 2 +- > tools/testing/kunit/kunit_tool_test.py | 4 ++-- > 2 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/tools/testing/kunit/kunit_parser.py b/tools/testing/kunit/kunit_parser.py > index a56c75a973b5..d0ed5dd5cfc4 100644 > --- a/tools/testing/kunit/kunit_parser.py > +++ b/tools/testing/kunit/kunit_parser.py > @@ -782,7 +782,7 @@ def parse_run_tests(kernel_output: Iterable[str]) -> Test: > test = Test() > if not lines: > test.name = '<missing>' > - test.add_error('could not find any KTAP output!') > + test.add_error('Could not find any KTAP output. Did any KUnit tests run?') > test.status = TestStatus.FAILURE_TO_PARSE_TESTS > else: > test = parse_test(lines, 0, []) > diff --git a/tools/testing/kunit/kunit_tool_test.py b/tools/testing/kunit/kunit_tool_test.py > index 90c65b072be9..84a08cf07242 100755 > --- a/tools/testing/kunit/kunit_tool_test.py > +++ b/tools/testing/kunit/kunit_tool_test.py > @@ -207,7 +207,7 @@ class KUnitParserTest(unittest.TestCase): > with open(crash_log) as file: > result = kunit_parser.parse_run_tests( > kunit_parser.extract_tap_lines(file.readlines())) > - print_mock.assert_any_call(StrContains('could not find any KTAP output!')) > + print_mock.assert_any_call(StrContains('Could not find any KTAP output.')) > print_mock.stop() > self.assertEqual(0, len(result.subtests)) > self.assertEqual(result.counts.errors, 1) > @@ -588,7 +588,7 @@ class KUnitMainTest(unittest.TestCase): > self.assertEqual(e.exception.code, 1) > self.assertEqual(self.linux_source_mock.build_reconfig.call_count, 1) > self.assertEqual(self.linux_source_mock.run_kernel.call_count, 1) > - self.print_mock.assert_any_call(StrContains('could not find any KTAP output!')) > + self.print_mock.assert_any_call(StrContains('Could not find any KTAP output.')) > > def test_exec_no_tests(self): > self.linux_source_mock.run_kernel = mock.Mock(return_value=['TAP version 14', '1..0']) > > base-commit: 870f63b7cd78d0055902d839a60408f7428b4e84 > -- > 2.38.1.431.g37b22c650d-goog >
diff --git a/tools/testing/kunit/kunit_parser.py b/tools/testing/kunit/kunit_parser.py index a56c75a973b5..d0ed5dd5cfc4 100644 --- a/tools/testing/kunit/kunit_parser.py +++ b/tools/testing/kunit/kunit_parser.py @@ -782,7 +782,7 @@ def parse_run_tests(kernel_output: Iterable[str]) -> Test: test = Test() if not lines: test.name = '<missing>' - test.add_error('could not find any KTAP output!') + test.add_error('Could not find any KTAP output. Did any KUnit tests run?') test.status = TestStatus.FAILURE_TO_PARSE_TESTS else: test = parse_test(lines, 0, []) diff --git a/tools/testing/kunit/kunit_tool_test.py b/tools/testing/kunit/kunit_tool_test.py index 90c65b072be9..84a08cf07242 100755 --- a/tools/testing/kunit/kunit_tool_test.py +++ b/tools/testing/kunit/kunit_tool_test.py @@ -207,7 +207,7 @@ class KUnitParserTest(unittest.TestCase): with open(crash_log) as file: result = kunit_parser.parse_run_tests( kunit_parser.extract_tap_lines(file.readlines())) - print_mock.assert_any_call(StrContains('could not find any KTAP output!')) + print_mock.assert_any_call(StrContains('Could not find any KTAP output.')) print_mock.stop() self.assertEqual(0, len(result.subtests)) self.assertEqual(result.counts.errors, 1) @@ -588,7 +588,7 @@ class KUnitMainTest(unittest.TestCase): self.assertEqual(e.exception.code, 1) self.assertEqual(self.linux_source_mock.build_reconfig.call_count, 1) self.assertEqual(self.linux_source_mock.run_kernel.call_count, 1) - self.print_mock.assert_any_call(StrContains('could not find any KTAP output!')) + self.print_mock.assert_any_call(StrContains('Could not find any KTAP output.')) def test_exec_no_tests(self): self.linux_source_mock.run_kernel = mock.Mock(return_value=['TAP version 14', '1..0'])