Exemplo n.º 1
0
    def test_reorder_tests_reverse_with_duplicates(self):
        class Tests1(unittest.TestCase):
            def test1(self):
                pass

        class Tests2(unittest.TestCase):
            def test2(self):
                pass

            def test3(self):
                pass

        suite = self.build_test_suite((Tests1, Tests2))
        subsuite = list(suite)[0]
        suite.addTest(subsuite)
        tests = list(iter_test_cases(suite))
        self.assertTestNames(tests, expected=[
            'Tests1.test1', 'Tests2.test2', 'Tests2.test3', 'Tests1.test1',
        ])
        reordered_tests = reorder_tests(tests, classes=[])
        self.assertTestNames(reordered_tests, expected=[
            'Tests1.test1', 'Tests2.test2', 'Tests2.test3',
        ])
        reordered_tests = reorder_tests(tests, classes=[], reverse=True)
        self.assertTestNames(reordered_tests, expected=[
            'Tests2.test3', 'Tests2.test2', 'Tests1.test1',
        ])
Exemplo n.º 2
0
 def test_reorder_tests_random(self):
     tests = self.make_tests()
     # Choose a seed that shuffles both the classes and methods.
     shuffler = Shuffler(seed=9)
     reordered_tests = reorder_tests(tests, classes=[], shuffler=shuffler)
     self.assertIsInstance(reordered_tests, collections.abc.Iterator)
     self.assertTestNames(reordered_tests,
                          expected=[
                              'Tests2.test1',
                              'Tests2.test2',
                              'Tests1.test2',
                              'Tests1.test1',
                          ])
Exemplo n.º 3
0
 def test_reorder_tests_random_mixed_classes(self):
     tests = self.make_tests()
     # Move the last item to the front.
     tests.insert(0, tests.pop())
     shuffler = Shuffler(seed=9)
     self.assertTestNames(tests,
                          expected=[
                              'Tests2.test2',
                              'Tests1.test1',
                              'Tests1.test2',
                              'Tests2.test1',
                          ])
     reordered_tests = reorder_tests(tests, classes=[], shuffler=shuffler)
     self.assertTestNames(reordered_tests,
                          expected=[
                              'Tests2.test1',
                              'Tests2.test2',
                              'Tests1.test2',
                              'Tests1.test1',
                          ])
Exemplo n.º 4
0
 def test_reorder_tests_same_type_consecutive(self):
     """Tests of the same type are made consecutive."""
     tests = self.make_tests()
     # Move the last item to the front.
     tests.insert(0, tests.pop())
     self.assertTestNames(tests,
                          expected=[
                              'Tests2.test2',
                              'Tests1.test1',
                              'Tests1.test2',
                              'Tests2.test1',
                          ])
     reordered_tests = reorder_tests(tests, classes=[])
     self.assertTestNames(reordered_tests,
                          expected=[
                              'Tests2.test2',
                              'Tests2.test1',
                              'Tests1.test1',
                              'Tests1.test2',
                          ])