kunit: tool: fix unit test cleanup handling
* Stop leaking file objects. * Use self.addCleanup() to ensure we call cleanup functions even if setUp() fails. * use mock.patch.stopall instead of more error-prone manual approach Signed-off-by: Daniel Latypov <dlatypov@google.com> Reviewed-by: David Gow <davidgow@google.com> Tested-by: Brendan Higgins <brendanhiggins@google.com> Acked-by: Brendan Higgins <brendanhiggins@google.com> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
This commit is contained in:
committed by
Shuah Khan
parent
92bf22614b
commit
cfd607e43d
@@ -288,19 +288,17 @@ class StrContains(str):
|
|||||||
class KUnitMainTest(unittest.TestCase):
|
class KUnitMainTest(unittest.TestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
path = get_absolute_path('test_data/test_is_test_passed-all_passed.log')
|
path = get_absolute_path('test_data/test_is_test_passed-all_passed.log')
|
||||||
file = open(path)
|
with open(path) as file:
|
||||||
all_passed_log = file.readlines()
|
all_passed_log = file.readlines()
|
||||||
self.print_patch = mock.patch('builtins.print')
|
|
||||||
self.print_mock = self.print_patch.start()
|
self.print_mock = mock.patch('builtins.print').start()
|
||||||
|
self.addCleanup(mock.patch.stopall)
|
||||||
|
|
||||||
self.linux_source_mock = mock.Mock()
|
self.linux_source_mock = mock.Mock()
|
||||||
self.linux_source_mock.build_reconfig = mock.Mock(return_value=True)
|
self.linux_source_mock.build_reconfig = mock.Mock(return_value=True)
|
||||||
self.linux_source_mock.build_um_kernel = mock.Mock(return_value=True)
|
self.linux_source_mock.build_um_kernel = mock.Mock(return_value=True)
|
||||||
self.linux_source_mock.run_kernel = mock.Mock(return_value=all_passed_log)
|
self.linux_source_mock.run_kernel = mock.Mock(return_value=all_passed_log)
|
||||||
|
|
||||||
def tearDown(self):
|
|
||||||
self.print_patch.stop()
|
|
||||||
pass
|
|
||||||
|
|
||||||
def test_config_passes_args_pass(self):
|
def test_config_passes_args_pass(self):
|
||||||
kunit.main(['config', '--build_dir=.kunit'], self.linux_source_mock)
|
kunit.main(['config', '--build_dir=.kunit'], self.linux_source_mock)
|
||||||
assert self.linux_source_mock.build_reconfig.call_count == 1
|
assert self.linux_source_mock.build_reconfig.call_count == 1
|
||||||
|
|||||||
Reference in New Issue
Block a user