[Python-checkins] r81023 - in python/branches/py3k: Lib/unittest/test/test_suite.py

michael.foord python-checkins at python.org
Sun May 9 11:59:35 CEST 2010


Author: michael.foord
Date: Sun May  9 11:59:35 2010
New Revision: 81023

Log:
Merged revisions 81022 via svnmerge from 
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r81022 | michael.foord | 2010-05-09 11:58:25 +0200 (Sun, 09 May 2010) | 1 line
  
  Adding a test for unittest.BaseTestSuite.
........


Modified:
   python/branches/py3k/   (props changed)
   python/branches/py3k/Lib/unittest/test/test_suite.py

Modified: python/branches/py3k/Lib/unittest/test/test_suite.py
==============================================================================
--- python/branches/py3k/Lib/unittest/test/test_suite.py	(original)
+++ python/branches/py3k/Lib/unittest/test/test_suite.py	Sun May  9 11:59:35 2010
@@ -1,5 +1,6 @@
 import unittest
 
+import sys
 from .support import LoggingResult, TestEquality
 
 
@@ -300,5 +301,49 @@
         suite.run(unittest.TestResult())
 
 
+
+    def test_basetestsuite(self):
+        class Test(unittest.TestCase):
+            wasSetUp = False
+            wasTornDown = False
+            @classmethod
+            def setUpClass(cls):
+                cls.wasSetUp = True
+            @classmethod
+            def tearDownClass(cls):
+                cls.wasTornDown = True
+            def testPass(self):
+                pass
+            def testFail(self):
+                fail
+        class Module(object):
+            wasSetUp = False
+            wasTornDown = False
+            @staticmethod
+            def setUpModule():
+                Module.wasSetUp = True
+            @staticmethod
+            def tearDownModule():
+                Module.wasTornDown = True
+
+        Test.__module__ = 'Module'
+        sys.modules['Module'] = Module
+        self.addCleanup(sys.modules.pop, 'Module')
+
+        suite = unittest.BaseTestSuite()
+        suite.addTests([Test('testPass'), Test('testFail')])
+        self.assertEqual(suite.countTestCases(), 2)
+
+        result = unittest.TestResult()
+        suite.run(result)
+        self.assertFalse(Module.wasSetUp)
+        self.assertFalse(Module.wasTornDown)
+        self.assertFalse(Test.wasSetUp)
+        self.assertFalse(Test.wasTornDown)
+        self.assertEqual(len(result.errors), 1)
+        self.assertEqual(len(result.failures), 0)
+        self.assertEqual(result.testsRun, 2)
+
+
 if __name__ == '__main__':
     unittest.main()


More information about the Python-checkins mailing list