Commit 0d0d2451 authored by Brendan Higgins's avatar Brendan Higgins Committed by Shuah Khan
Browse files

kunit: tools: fix kunit_tool tests for parsing test plans



Some tests logs for kunit_tool tests are missing their test plans
causing their tests to fail; fix this by adding the test plans.

Fixes: 45dcbb6f ("kunit: test: add test plan to KUnit TAP format")
Signed-off-by: default avatarBrendan Higgins <brendanhiggins@google.com>
Reviewed-by: default avatarDavid Gow <davidgow@google.com>
Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
parent f0b62039
Loading
Loading
Loading
Loading
+25 −7
Original line number Diff line number Diff line
@@ -179,7 +179,7 @@ class KUnitParserTest(unittest.TestCase):
		print_mock = mock.patch('builtins.print').start()
		result = kunit_parser.parse_run_tests(
			kunit_parser.isolate_kunit_output(file.readlines()))
		print_mock.assert_any_call(StrContains("no kunit output detected"))
		print_mock.assert_any_call(StrContains('no tests run!'))
		print_mock.stop()
		file.close()

@@ -198,6 +198,9 @@ class KUnitParserTest(unittest.TestCase):
			'test_data/test_config_printk_time.log')
		with open(prefix_log) as file:
			result = kunit_parser.parse_run_tests(file.readlines())
			self.assertEqual(
				kunit_parser.TestStatus.SUCCESS,
				result.status)
			self.assertEqual('kunit-resource-test', result.suites[0].name)

	def test_ignores_multiple_prefixes(self):
@@ -205,6 +208,9 @@ class KUnitParserTest(unittest.TestCase):
			'test_data/test_multiple_prefixes.log')
		with open(prefix_log) as file:
			result = kunit_parser.parse_run_tests(file.readlines())
			self.assertEqual(
				kunit_parser.TestStatus.SUCCESS,
				result.status)
			self.assertEqual('kunit-resource-test', result.suites[0].name)

	def test_prefix_mixed_kernel_output(self):
@@ -212,24 +218,36 @@ class KUnitParserTest(unittest.TestCase):
			'test_data/test_interrupted_tap_output.log')
		with open(mixed_prefix_log) as file:
			result = kunit_parser.parse_run_tests(file.readlines())
			self.assertEqual(
				kunit_parser.TestStatus.SUCCESS,
				result.status)
			self.assertEqual('kunit-resource-test', result.suites[0].name)

	def test_prefix_poundsign(self):
		pound_log = get_absolute_path('test_data/test_pound_sign.log')
		with open(pound_log) as file:
			result = kunit_parser.parse_run_tests(file.readlines())
			self.assertEqual(
				kunit_parser.TestStatus.SUCCESS,
				result.status)
			self.assertEqual('kunit-resource-test', result.suites[0].name)

	def test_kernel_panic_end(self):
		panic_log = get_absolute_path('test_data/test_kernel_panic_interrupt.log')
		with open(panic_log) as file:
			result = kunit_parser.parse_run_tests(file.readlines())
			self.assertEqual(
				kunit_parser.TestStatus.TEST_CRASHED,
				result.status)
			self.assertEqual('kunit-resource-test', result.suites[0].name)

	def test_pound_no_prefix(self):
		pound_log = get_absolute_path('test_data/test_pound_no_prefix.log')
		with open(pound_log) as file:
			result = kunit_parser.parse_run_tests(file.readlines())
			self.assertEqual(
				kunit_parser.TestStatus.SUCCESS,
				result.status)
			self.assertEqual('kunit-resource-test', result.suites[0].name)

class KUnitJsonTest(unittest.TestCase):
+2 −1
Original line number Diff line number Diff line
[    0.060000] printk: console [mc-1] enabled
[    0.060000] random: get_random_bytes called from init_oops_id+0x35/0x40 with crng_init=0
[    0.060000] TAP version 14
[    0.060000] 1..3
[    0.060000] 	# Subtest: kunit-resource-test
[    0.060000] 	1..5
[    0.060000] 	ok 1 - kunit_resource_test_init_resources
+2 −1
Original line number Diff line number Diff line
[    0.060000] printk: console [mc-1] enabled
[    0.060000] random: get_random_bytes called from init_oops_id+0x35/0x40 with crng_init=0
[    0.060000] TAP version 14
[    0.060000] 1..3
[    0.060000] 	# Subtest: kunit-resource-test
[    0.060000] 	1..5
[    0.060000] 	ok 1 - kunit_resource_test_init_resources
+2 −1
Original line number Diff line number Diff line
[    0.060000] printk: console [mc-1] enabled
[    0.060000] random: get_random_bytes called from init_oops_id+0x35/0x40 with crng_init=0
[    0.060000] TAP version 14
[    0.060000] 1..3
[    0.060000] 	# Subtest: kunit-resource-test
[    0.060000] 	1..5
[    0.060000] 	ok 1 - kunit_resource_test_init_resources
+2 −1
Original line number Diff line number Diff line
[    0.060000][    T1] printk: console [mc-1] enabled
[    0.060000][    T1] random: get_random_bytes called from init_oops_id+0x35/0x40 with crng_init=0
[    0.060000][    T1] TAP version 14
[    0.060000][    T1] 1..3
[    0.060000][    T1] 	# Subtest: kunit-resource-test
[    0.060000][    T1] 	1..5
[    0.060000][    T1] 	ok 1 - kunit_resource_test_init_resources
Loading