Merge tag 'linux-kselftest-kunit-5.15-rc1' of git://git.kernel.org/pub/scm/linux...
[linux-2.6-microblaze.git] / tools / testing / kunit / kunit_tool_test.py
index 75045aa..619c455 100755 (executable)
@@ -356,7 +356,7 @@ class KUnitMainTest(unittest.TestCase):
                self.assertEqual(self.linux_source_mock.build_reconfig.call_count, 0)
                self.assertEqual(self.linux_source_mock.run_kernel.call_count, 1)
                self.linux_source_mock.run_kernel.assert_called_once_with(
-                       build_dir='.kunit', filter_glob='', timeout=300)
+                       args=None, build_dir='.kunit', filter_glob='', timeout=300)
                self.print_mock.assert_any_call(StrContains('Testing complete.'))
 
        def test_run_passes_args_pass(self):
@@ -364,7 +364,7 @@ class KUnitMainTest(unittest.TestCase):
                self.assertEqual(self.linux_source_mock.build_reconfig.call_count, 1)
                self.assertEqual(self.linux_source_mock.run_kernel.call_count, 1)
                self.linux_source_mock.run_kernel.assert_called_once_with(
-                       build_dir='.kunit', filter_glob='', timeout=300)
+                       args=None, build_dir='.kunit', filter_glob='', timeout=300)
                self.print_mock.assert_any_call(StrContains('Testing complete.'))
 
        def test_exec_passes_args_fail(self):
@@ -399,11 +399,20 @@ class KUnitMainTest(unittest.TestCase):
                        self.assertNotEqual(call, mock.call(StrContains('Testing complete.')))
                        self.assertNotEqual(call, mock.call(StrContains(' 0 tests run')))
 
+       def test_run_raw_output_kunit(self):
+               self.linux_source_mock.run_kernel = mock.Mock(return_value=[])
+               kunit.main(['run', '--raw_output=kunit'], self.linux_source_mock)
+               self.assertEqual(self.linux_source_mock.build_reconfig.call_count, 1)
+               self.assertEqual(self.linux_source_mock.run_kernel.call_count, 1)
+               for call in self.print_mock.call_args_list:
+                       self.assertNotEqual(call, mock.call(StrContains('Testing complete.')))
+                       self.assertNotEqual(call, mock.call(StrContains(' 0 tests run')))
+
        def test_exec_timeout(self):
                timeout = 3453
                kunit.main(['exec', '--timeout', str(timeout)], self.linux_source_mock)
                self.linux_source_mock.run_kernel.assert_called_once_with(
-                       build_dir='.kunit', filter_glob='', timeout=timeout)
+                       args=None, build_dir='.kunit', filter_glob='', timeout=timeout)
                self.print_mock.assert_any_call(StrContains('Testing complete.'))
 
        def test_run_timeout(self):
@@ -411,7 +420,7 @@ class KUnitMainTest(unittest.TestCase):
                kunit.main(['run', '--timeout', str(timeout)], self.linux_source_mock)
                self.assertEqual(self.linux_source_mock.build_reconfig.call_count, 1)
                self.linux_source_mock.run_kernel.assert_called_once_with(
-                       build_dir='.kunit', filter_glob='', timeout=timeout)
+                       args=None, build_dir='.kunit', filter_glob='', timeout=timeout)
                self.print_mock.assert_any_call(StrContains('Testing complete.'))
 
        def test_run_builddir(self):
@@ -419,7 +428,7 @@ class KUnitMainTest(unittest.TestCase):
                kunit.main(['run', '--build_dir=.kunit'], self.linux_source_mock)
                self.assertEqual(self.linux_source_mock.build_reconfig.call_count, 1)
                self.linux_source_mock.run_kernel.assert_called_once_with(
-                       build_dir=build_dir, filter_glob='', timeout=300)
+                       args=None, build_dir=build_dir, filter_glob='', timeout=300)
                self.print_mock.assert_any_call(StrContains('Testing complete.'))
 
        def test_config_builddir(self):
@@ -436,7 +445,7 @@ class KUnitMainTest(unittest.TestCase):
                build_dir = '.kunit'
                kunit.main(['exec', '--build_dir', build_dir], self.linux_source_mock)
                self.linux_source_mock.run_kernel.assert_called_once_with(
-                       build_dir=build_dir, filter_glob='', timeout=300)
+                       args=None, build_dir=build_dir, filter_glob='', timeout=300)
                self.print_mock.assert_any_call(StrContains('Testing complete.'))
 
        @mock.patch.object(kunit_kernel, 'LinuxSourceTree')
@@ -461,5 +470,13 @@ class KUnitMainTest(unittest.TestCase):
                                                        cross_compile=None,
                                                        qemu_config_path=None)
 
+       def test_run_kernel_args(self):
+               kunit.main(['run', '--kernel_args=a=1', '--kernel_args=b=2'], self.linux_source_mock)
+               self.assertEqual(self.linux_source_mock.build_reconfig.call_count, 1)
+               self.linux_source_mock.run_kernel.assert_called_once_with(
+                     args=['a=1','b=2'], build_dir='.kunit', filter_glob='', timeout=300)
+               self.print_mock.assert_any_call(StrContains('Testing complete.'))
+
+
 if __name__ == '__main__':
        unittest.main()