summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Foord <fuzzyman@voidspace.org.uk>2010-05-09 09:58:25 (GMT)
committerMichael Foord <fuzzyman@voidspace.org.uk>2010-05-09 09:58:25 (GMT)
commit53a92eb3c398ced54d985730fa70f946e18813a5 (patch)
tree414743ecd54e2a2fa964f89bc31f7a093e8d89a4
parent7000e9e01bb784dfc23a70a9d736613ae83c8dad (diff)
downloadcpython-53a92eb3c398ced54d985730fa70f946e18813a5.zip
cpython-53a92eb3c398ced54d985730fa70f946e18813a5.tar.gz
cpython-53a92eb3c398ced54d985730fa70f946e18813a5.tar.bz2
Adding a test for unittest.BaseTestSuite.
-rw-r--r--Lib/unittest/test/test_suite.py45
1 files changed, 45 insertions, 0 deletions
diff --git a/Lib/unittest/test/test_suite.py b/Lib/unittest/test/test_suite.py
index 2b8d678..f4a7468 100644
--- a/Lib/unittest/test/test_suite.py
+++ b/Lib/unittest/test/test_suite.py
@@ -1,5 +1,6 @@
import unittest
+import sys
from .support import LoggingResult, TestEquality
@@ -300,5 +301,49 @@ class Test_TestSuite(unittest.TestCase, TestEquality):
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()