Пример #1
0
    def test_skipping_decorators(self):
        op_table = ((unittest2.skipUnless, False, True),
                    (unittest2.skipIf, True, False))
        for deco, do_skip, dont_skip in op_table:
            class Foo(unittest2.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 = unittest2.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_skipping_decorators(self):
        op_table = ((unittest2.skipUnless, False, True),
                    (unittest2.skipIf, True, False))
        for deco, do_skip, dont_skip in op_table:
            class Foo(unittest2.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 = unittest2.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())
Пример #3
0
    def test_expected_failure_subtests(self):
        # A failure in any subtest counts as the expected failure of the
        # whole test.
        class Foo(unittest.TestCase):
            @unittest.expectedFailure
            def test_die(self):
                with self.subTest():
                    # This one succeeds
                    pass
                with self.subTest():
                    self.fail("help me!")
                with self.subTest():
                    # This one doesn't get executed
                    self.fail("shouldn't come here")

        events = []
        result = LoggingResult(events)
        test = Foo("test_die")
        test.run(result)
        self.assertEqual(events, [
            'startTest', 'addSubTestSuccess', 'addExpectedFailure', 'stopTest'
        ])
        self.assertEqual(len(result.expectedFailures), 1)
        self.assertIs(result.expectedFailures[0][0], test)
        self.assertTrue(result.wasSuccessful())
 def test_expected_failure(self):
     class Foo(unittest2.TestCase):
         @unittest2.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())
Пример #5
0
 def test_expected_failure(self):
     class Foo(unittest2.TestCase):
         @unittest2.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(unittest2.TestCase):
         @unittest2.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())
Пример #7
0
 def test_unexpected_success(self):
     class Foo(unittest2.TestCase):
         @unittest2.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())
Пример #8
0
 def test_unexpected_success_subtests(self):
     # Success in all subtests counts as the unexpected success of
     # the whole test.
     class Foo(unittest.TestCase):
         @unittest.expectedFailure
         def test_die(self):
             with self.subTest():
                 # This one succeeds
                 pass
             with self.subTest():
                 # So does this one
                 pass
     events = []
     result = LoggingResult(events)
     test = Foo("test_die")
     test.run(result)
     self.assertEqual(events,
                      ['startTest',
                       'addSubTestSuccess', 'addSubTestSuccess',
                       'addUnexpectedSuccess', 'stopTest'])
     self.assertFalse(result.failures)
     self.assertEqual(result.unexpectedSuccesses, [test])
     self.assertFalse(result.wasSuccessful())
Пример #9
0
 def test_expected_failure_subtests(self):
     # A failure in any subtest counts as the expected failure of the
     # whole test.
     class Foo(unittest.TestCase):
         @unittest.expectedFailure
         def test_die(self):
             with self.subTest():
                 # This one succeeds
                 pass
             with self.subTest():
                 self.fail("help me!")
             with self.subTest():
                 # This one doesn't get executed
                 self.fail("shouldn't come here")
     events = []
     result = LoggingResult(events)
     test = Foo("test_die")
     test.run(result)
     self.assertEqual(events,
                      ['startTest', 'addSubTestSuccess',
                       'addExpectedFailure', 'stopTest'])
     self.assertEqual(len(result.expectedFailures), 1)
     self.assertIs(result.expectedFailures[0][0], test)
     self.assertTrue(result.wasSuccessful())