7 from functest.core import TestCasesBase
10 class TestCasesBaseTesting(unittest.TestCase):
12 logging.disable(logging.CRITICAL)
15 self.test = TestCasesBase.TestCasesBase()
16 self.test.project = "functest"
17 self.test.case_name = "base"
18 self.test.start_time = "1"
19 self.test.stop_time = "2"
20 self.test.criteria = "100"
21 self.test.details = {"Hello": "World"}
23 def test_run_unimplemented(self):
24 self.assertEqual(self.test.run(),
25 TestCasesBase.TestCasesBase.EX_RUN_ERROR)
27 @mock.patch('functest.utils.functest_utils.push_results_to_db',
29 def _test_missing_attribute(self, mock_function):
30 self.assertEqual(self.test.push_to_db(),
31 TestCasesBase.TestCasesBase.EX_PUSH_TO_DB_ERROR)
32 mock_function.assert_not_called()
34 def test_missing_case_name(self):
35 self.test.case_name = None
36 self._test_missing_attribute()
38 def test_missing_criteria(self):
39 self.test.criteria = None
40 self._test_missing_attribute()
42 def test_missing_start_time(self):
43 self.test.start_time = None
44 self._test_missing_attribute()
46 def test_missing_stop_time(self):
47 self.test.stop_time = None
48 self._test_missing_attribute()
50 @mock.patch('functest.utils.functest_utils.push_results_to_db',
52 def test_missing_details(self, mock_function):
53 self.test.details = None
54 self.assertEqual(self.test.push_to_db(),
55 TestCasesBase.TestCasesBase.EX_OK)
56 mock_function.assert_called_once_with(
57 self.test.project, self.test.case_name, self.test.start_time,
58 self.test.stop_time, self.test.criteria, self.test.details)
60 @mock.patch('functest.utils.functest_utils.push_results_to_db',
62 def test_push_to_db_failed(self, mock_function):
63 self.assertEqual(self.test.push_to_db(),
64 TestCasesBase.TestCasesBase.EX_PUSH_TO_DB_ERROR)
65 mock_function.assert_called_once_with(
66 self.test.project, self.test.case_name, self.test.start_time,
67 self.test.stop_time, self.test.criteria, self.test.details)
69 @mock.patch('functest.utils.functest_utils.push_results_to_db',
71 def test_push_to_db(self, mock_function):
72 self.assertEqual(self.test.push_to_db(),
73 TestCasesBase.TestCasesBase.EX_OK)
74 mock_function.assert_called_once_with(
75 self.test.project, self.test.case_name, self.test.start_time,
76 self.test.stop_time, self.test.criteria, self.test.details)
79 if __name__ == "__main__":
80 unittest.main(verbosity=2)