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 xtesting.ci import tier_handler
18 class TierHandlerTesting(unittest.TestCase):
19 # pylint: disable=too-many-public-methods
22 self.test = mock.Mock()
23 attrs = {'get_name.return_value': 'test_name'}
24 self.test.configure_mock(**attrs)
25 self.tier = tier_handler.Tier(
26 'test_tier', 'test_order', 'test_desc')
27 self.testcase = tier_handler.TestCase(
28 'test_name', 'true', 'test_criteria',
29 True, description='test_desc', project='project_name')
30 self.testcase.str = self.testcase.__str__()
31 self.tier.str = self.tier.__str__()
33 def test_split_text(self):
34 test_str = 'this is for testing'
35 self.assertEqual(tier_handler.split_text(test_str, 10),
36 ['this is ', 'for ', 'testing '])
38 def test_add_test(self):
39 self.tier.add_test(self.test)
40 self.assertEqual(self.tier.tests_array, [self.test])
42 def test_get_skipped_test1(self):
43 self.assertEqual(self.tier.get_skipped_test(), [])
45 def test_get_skipped_test2(self):
46 self.tier.skip_test(self.test)
47 self.assertEqual(self.tier.get_skipped_test(), [self.test])
49 def test_get_tests(self):
50 self.tier.tests_array = [self.test]
51 self.assertEqual(self.tier.get_tests(), [self.test])
53 def test_get_test_names(self):
54 self.tier.tests_array = [self.test]
55 self.assertEqual(self.tier.get_test_names(), ['test_name'])
57 def test_get_test(self):
58 self.tier.tests_array = [self.test]
59 with mock.patch.object(self.tier, 'is_test', return_value=True):
60 self.assertEqual(self.tier.get_test('test_name'), self.test)
62 def test_get_test_missing_test(self):
63 self.tier.tests_array = [self.test]
64 with mock.patch.object(self.tier, 'is_test', return_value=False):
65 self.assertEqual(self.tier.get_test('test_name'), None)
67 def test_get_name(self):
68 self.assertEqual(self.tier.get_name(), 'test_tier')
70 def test_get_order(self):
71 self.assertEqual(self.tier.get_order(), 'test_order')
73 def test_testcase_get_name(self):
74 self.assertEqual(self.tier.get_name(), 'test_tier')
76 def test_testcase_is_enabled(self):
77 self.assertEqual(self.testcase.is_enabled(), 'true')
79 def test_testcase_get_criteria(self):
80 self.assertEqual(self.testcase.get_criteria(), 'test_criteria')
82 def test_testcase_is_blocking(self):
83 self.assertTrue(self.testcase.is_blocking())
85 def test_testcase_get_project(self):
86 self.assertEqual(self.testcase.get_project(), 'project_name')
88 def test_testcase_get_order(self):
89 self.assertEqual(self.tier.get_order(), 'test_order')
92 if __name__ == "__main__":
93 logging.disable(logging.CRITICAL)
94 unittest.main(verbosity=2)