kunit: tool: make unit test not print parsed testdata to stdout
authorDaniel Latypov <dlatypov@google.com>
Fri, 28 Oct 2022 21:02:55 +0000 (14:02 -0700)
committerShuah Khan <skhan@linuxfoundation.org>
Mon, 31 Oct 2022 08:47:07 +0000 (02:47 -0600)
Currently, if you run
$ ./tools/testing/kunit/kunit_tool_test.py
you'll see a lot of output from the parser as we feed it testdata.

This makes the output hard to read and fairly confusing, esp. since our
testdata includes example failures, which get printed out in red.

Silence that output so real failures are easier to see.

Signed-off-by: Daniel Latypov <dlatypov@google.com>
Reviewed-by: David Gow <davidgow@google.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
tools/testing/kunit/kunit_tool_test.py

index e2cd2cc..a6e5394 100755 (executable)
@@ -80,6 +80,9 @@ class KconfigTest(unittest.TestCase):
                self.assertEqual(actual_kconfig, expected_kconfig)
 
 class KUnitParserTest(unittest.TestCase):
+       def setUp(self):
+               self.print_mock = mock.patch('kunit_printer.Printer.print').start()
+               self.addCleanup(mock.patch.stopall)
 
        def assertContains(self, needle: str, haystack: kunit_parser.LineStream):
                # Clone the iterator so we can print the contents on failure.
@@ -485,6 +488,9 @@ class LinuxSourceTreeTest(unittest.TestCase):
 
 
 class KUnitJsonTest(unittest.TestCase):
+       def setUp(self):
+               self.print_mock = mock.patch('kunit_printer.Printer.print').start()
+               self.addCleanup(mock.patch.stopall)
 
        def _json_for(self, log_file):
                with open(test_data_path(log_file)) as file: