3 # All rights reserved. This program and the accompanying materials
4 # are made available under the terms of the Apache License, Version 2.0
5 # which accompanies this distribution, and is available at
6 # http://www.apache.org/licenses/LICENSE-2.0
8 # pylint: disable=missing-docstring
15 from functest.core import pytest_suite_runner
16 from functest.core import testcase
19 class PyTestSuiteRunnerTesting(unittest.TestCase):
21 logging.disable(logging.CRITICAL)
24 self.psrunner = pytest_suite_runner.PyTestSuiteRunner()
25 self.result = mock.Mock()
26 attrs = {'errors': [('test1', 'error_msg1')],
27 'failures': [('test2', 'failure_msg1')]}
28 self.result.configure_mock(**attrs)
30 self.pass_results = mock.Mock()
31 attrs = {'errors': None,
33 self.pass_results.configure_mock(**attrs)
36 self.psrunner.case_name = 'test_case_name'
37 with mock.patch('functest.core.pytest_suite_runner.'
38 'unittest.TextTestRunner.run',
39 return_value=self.result):
40 self.assertEqual(self.psrunner.run(),
41 testcase.TestCase.EX_OK)
43 with mock.patch('functest.core.pytest_suite_runner.'
44 'unittest.TextTestRunner.run',
45 return_value=self.pass_results):
46 self.assertEqual(self.psrunner.run(),
47 testcase.TestCase.EX_OK)
50 if __name__ == "__main__":
51 unittest.main(verbosity=2)