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):
22 self.psrunner = pytest_suite_runner.PyTestSuiteRunner()
23 self.result = mock.Mock()
24 attrs = {'errors': [('test1', 'error_msg1')],
25 'failures': [('test2', 'failure_msg1')]}
26 self.result.configure_mock(**attrs)
28 self.pass_results = mock.Mock()
29 attrs = {'errors': None,
31 self.pass_results.configure_mock(**attrs)
34 self.psrunner.case_name = 'test_case_name'
35 with mock.patch('functest.core.pytest_suite_runner.'
36 'unittest.TextTestRunner.run',
37 return_value=self.result):
38 self.assertEqual(self.psrunner.run(),
39 testcase.TestCase.EX_OK)
41 with mock.patch('functest.core.pytest_suite_runner.'
42 'unittest.TextTestRunner.run',
43 return_value=self.pass_results):
44 self.assertEqual(self.psrunner.run(),
45 testcase.TestCase.EX_OK)
48 if __name__ == "__main__":
49 logging.disable(logging.CRITICAL)
50 unittest.main(verbosity=2)