PHP 7.4.33
Preview: test_skipping.py Size: 5.61 KB
//lib64/python2.7/unittest/test/test_skipping.py

import unittest

from unittest.test.support import LoggingResult


class Test_TestSkipping(unittest.TestCase):

    def test_skipping(self):
        class Foo(unittest.TestCase):
            def test_skip_me(self):
                self.skipTest("skip")
        events = []
        result = LoggingResult(events)
        test = Foo("test_skip_me")
        test.run(result)
        self.assertEqual(events, ['startTest', 'addSkip', 'stopTest'])
        self.assertEqual(result.skipped, [(test, "skip")])

        # Try letting setUp skip the test now.
        class Foo(unittest.TestCase):
            def setUp(self):
                self.skipTest("testing")
            def test_nothing(self): pass
        events = []
        result = LoggingResult(events)
        test = Foo("test_nothing")
        test.run(result)
        self.assertEqual(events, ['startTest', 'addSkip', 'stopTest'])
        self.assertEqual(result.skipped, [(test, "testing")])
        self.assertEqual(result.testsRun, 1)

    def test_skipping_decorators(self):
        op_table = ((unittest.skipUnless, False, True),
                    (unittest.skipIf, True, False))
        for deco, do_skip, dont_skip in op_table:
            class Foo(unittest.TestCase):
                @deco(do_skip, "testing")
                def test_skip(self): pass

                @deco(dont_skip, "testing")
                def test_dont_skip(self): pass
            test_do_skip = Foo("test_skip")
            test_dont_skip = Foo("test_dont_skip")
            suite = unittest.TestSuite([test_do_skip, test_dont_skip])
            events = []
            result = LoggingResult(events)
            suite.run(result)
            self.assertEqual(len(result.skipped), 1)
            expected = ['startTest', 'addSkip', 'stopTest',
                        'startTest', 'addSuccess', 'stopTest']
            self.assertEqual(events, expected)
            self.assertEqual(result.testsRun, 2)
            self.assertEqual(result.skipped, [(test_do_skip, "testing")])
            self.assertTrue(result.wasSuccessful())

    def test_skip_class(self):
        @unittest.skip("testing")
        class Foo(unittest.TestCase):
            def test_1(self):
                record.append(1)
        record = []
        result = unittest.TestResult()
        test = Foo("test_1")
        suite = unittest.TestSuite([test])
        suite.run(result)
        self.assertEqual(result.skipped, [(test, "testing")])
        self.assertEqual(record, [])

    def test_skip_non_unittest_class_old_style(self):
        @unittest.skip("testing")
        class Mixin:
            def test_1(self):
                record.append(1)
        class Foo(Mixin, unittest.TestCase):
            pass
        record = []
        result = unittest.TestResult()
        test = Foo("test_1")
        suite = unittest.TestSuite([test])
        suite.run(result)
        self.assertEqual(result.skipped, [(test, "testing")])
        self.assertEqual(record, [])

    def test_skip_non_unittest_class_new_style(self):
        @unittest.skip("testing")
        class Mixin(object):
            def test_1(self):
                record.append(1)
        class Foo(Mixin, unittest.TestCase):
            pass
        record = []
        result = unittest.TestResult()
        test = Foo("test_1")
        suite = unittest.TestSuite([test])
        suite.run(result)
        self.assertEqual(result.skipped, [(test, "testing")])
        self.assertEqual(record, [])

    def test_expected_failure(self):
        class Foo(unittest.TestCase):
            @unittest.expectedFailure
            def test_die(self):
                self.fail("help me!")
        events = []
        result = LoggingResult(events)
        test = Foo("test_die")
        test.run(result)
        self.assertEqual(events,
                         ['startTest', 'addExpectedFailure', 'stopTest'])
        self.assertEqual(result.expectedFailures[0][0], test)
        self.assertTrue(result.wasSuccessful())

    def test_unexpected_success(self):
        class Foo(unittest.TestCase):
            @unittest.expectedFailure
            def test_die(self):
                pass
        events = []
        result = LoggingResult(events)
        test = Foo("test_die")
        test.run(result)
        self.assertEqual(events,
                         ['startTest', 'addUnexpectedSuccess', 'stopTest'])
        self.assertFalse(result.failures)
        self.assertEqual(result.unexpectedSuccesses, [test])
        self.assertTrue(result.wasSuccessful())

    def test_skip_doesnt_run_setup(self):
        class Foo(unittest.TestCase):
            wasSetUp = False
            wasTornDown = False
            def setUp(self):
                Foo.wasSetUp = True
            def tornDown(self):
                Foo.wasTornDown = True
            @unittest.skip('testing')
            def test_1(self):
                pass

        result = unittest.TestResult()
        test = Foo("test_1")
        suite = unittest.TestSuite([test])
        suite.run(result)
        self.assertEqual(result.skipped, [(test, "testing")])
        self.assertFalse(Foo.wasSetUp)
        self.assertFalse(Foo.wasTornDown)

    def test_decorated_skip(self):
        def decorator(func):
            def inner(*a):
                return func(*a)
            return inner

        class Foo(unittest.TestCase):
            @decorator
            @unittest.skip('testing')
            def test_1(self):
                pass

        result = unittest.TestResult()
        test = Foo("test_1")
        suite = unittest.TestSuite([test])
        suite.run(result)
        self.assertEqual(result.skipped, [(test, "testing")])


if __name__ == '__main__':
    unittest.main()

Directory Contents

Dirs: 0 × Files: 45

Name Size Perms Modified Actions
50 B lrw-r--r-- 2024-04-10 04:58:35
Edit Download
130 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
130 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.39 KB lrw-r--r-- 2024-04-10 04:58:35
Edit Download
5.86 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.86 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
11.68 KB lrw-r--r-- 2024-04-10 04:58:35
Edit Download
13.12 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
13.12 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
9.42 KB lrw-r--r-- 2024-04-10 04:58:35
Edit Download
9.91 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
9.91 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
44.65 KB lrw-r--r-- 2024-04-10 04:58:35
Edit Download
45.92 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
45.92 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
13.98 KB lrw-r--r-- 2024-04-10 04:58:35
Edit Download
17.25 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
17.25 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.42 KB lrw-r--r-- 2024-04-10 04:58:36
Edit Download
5.94 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.94 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
48.70 KB lrw-r--r-- 2024-04-10 04:58:36
Edit Download
48.65 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
48.65 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
7.40 KB lrw-r--r-- 2024-04-10 04:58:36
Edit Download
10.23 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
10.17 KB lrw-r--r-- 2024-04-10 04:58:44
Edit Download
18.61 KB lrw-r--r-- 2024-04-10 04:58:36
Edit Download
20.90 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
20.90 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
8.41 KB lrw-r--r-- 2024-04-10 04:58:36
Edit Download
13.79 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
13.79 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
16.07 KB lrw-r--r-- 2024-04-10 04:58:36
Edit Download
28.49 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
28.49 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.61 KB lrw-r--r-- 2024-04-10 04:58:36
Edit Download
9.38 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
9.38 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
11.80 KB lrw-r--r-- 2024-04-10 04:58:36
Edit Download
15.14 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
15.14 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
514 B lrw-r--r-- 2024-04-10 04:58:35
Edit Download
906 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
906 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).