示例#1
0
    def test_multiple_buckets(self):
        self.discover_mock.return_value = self.all_tests

        # Buckets should be assigned:
        # 0 -> TestCaseWithManyTesets, TestCaseWithFewTests
        # 1 -> AAA_FirstTestCaseWithSameNumberOfTests, ZZZ_SecondTestCaseWithSameNumberOfTests
        instance = test_runner.TestRunner(mock.sentinel.test_path,
                                          bucket=0,
                                          bucket_count=2)
        discovered = instance.discover()
        self.assert_types_of_discovered(
            discovered,
            (
                bucketing_test.TestCaseWithManyTests,
                bucketing_test.TestCaseWithFewTests,
            ),
        )

        instance = test_runner.TestRunner(mock.sentinel.test_path,
                                          bucket=1,
                                          bucket_count=2)
        discovered = instance.discover()
        self.assert_types_of_discovered(
            discovered,
            (
                bucketing_test.AAA_FirstTestCaseWithSameNumberOfTests,
                bucketing_test.ZZZ_SecondTestCaseWithSameNumberOfTests,
            ),
        )
示例#2
0
    def test_unit_test_status(self):
        runner = test_runner.TestRunner(UnitTest)
        assert runner.run()
        assert UnitTest.status == [True] * 6, UnitTest.status

        runner = test_runner.TestRunner(UnitTestUntested)
        assert runner.run()
        assert UnitTestUntested.status == [False] * 6, UnitTestUntested.status
示例#3
0
 def test_prints_one_per_line(self):
     instance = test_runner.TestRunner(mock.sentinel.test_class)
     instance.list_tests(mock.sentinel.selected_suite_name)
     self.print_mock.assert_has_calls([
         mock.call(self.get_test_method_name_mock.return_value)
         for _ in self.get_tests_for_suite_mock.return_value
     ])
示例#4
0
    def test_plugin_run(self):
        runner = test_runner.TestRunner(self.dummy_test_class, plugin_modules=[self.our_module])

        assert runner.run()
        assert self.ran_test
        assert not running
        assert prepared
示例#5
0
    def test_bucketing_one_bucket(self):
        """Trivial base case, should return similar to no_buckets, but with sorting"""
        self.discover_mock.return_value = self.all_tests

        instance = test_runner.TestRunner(mock.sentinel.test_path, bucket=0, bucket_count=1)
        discovered = instance.discover()
        self.assert_types_of_discovered(discovered, self.all_tests_sorted_by_number_of_tests)
示例#6
0
    def test_bucketing_no_buckets(self):
        self.discover_mock.return_value = self.all_tests

        instance = test_runner.TestRunner(mock.sentinel.test_path)
        discovered = instance.discover()
        # The tests we discover should be in the order that test_discovery
        # returns them as
        self.assert_types_of_discovered(discovered, self.all_tests)
示例#7
0
    def test_bucketing_with_filtering(self):
        self.discover_mock.return_value = self.all_tests
        instance = test_runner.TestRunner(
            mock.sentinel.test_path,
            bucket=0,
            bucket_count=1,
            module_method_overrides={
                self.all_tests[0].__name__: set(),
            },
        )

        discovered = instance.discover()
        self.assert_types_of_discovered(discovered, (self.all_tests[0], ))
示例#8
0
    def test_get_tests_for_suite_not_in_suite(self):
        self.in_suite_mock.return_value = False

        instance = test_runner.TestRunner(mock.sentinel.test_class)
        ret = instance.get_tests_for_suite(mock.sentinel.selected_suite_name)
        assert_equal(ret, [])
示例#9
0
    def test_get_tests_for_suite_in_suite(self):
        self.in_suite_mock.return_value = True

        instance = test_runner.TestRunner(mock.sentinel.test_class)
        ret = instance.get_tests_for_suite(mock.sentinel.selected_suite_name)
        assert_equal(list(ret), [self.mock_test_method])