[Checkins] SVN: z3c.testsetup/branches/ulif-sepfunctesting/src/z3c/testsetup/tests/test_testsetup.py Register new test with special setup.

Uli Fouquet uli at gnufix.de
Wed Jun 25 10:21:40 EDT 2008


Log message for revision 87758:
  Register new test with special setup.

Changed:
  U   z3c.testsetup/branches/ulif-sepfunctesting/src/z3c/testsetup/tests/test_testsetup.py

-=-
Modified: z3c.testsetup/branches/ulif-sepfunctesting/src/z3c/testsetup/tests/test_testsetup.py
===================================================================
--- z3c.testsetup/branches/ulif-sepfunctesting/src/z3c/testsetup/tests/test_testsetup.py	2008-06-25 14:21:07 UTC (rev 87757)
+++ z3c.testsetup/branches/ulif-sepfunctesting/src/z3c/testsetup/tests/test_testsetup.py	2008-06-25 14:21:39 UTC (rev 87758)
@@ -90,7 +90,46 @@
     suite = unittest.TestSuite(suites)
     return suite
 
+def zopeapptestingless_suite():
+    def setUp(test):
+        test.globs['saved-sys-info'] = (
+            sys.path[:],
+            sys.argv[:],
+            sys.modules.copy(),
+            gc.get_threshold(),
+            )
+        mlist = [x for x in sys.modules.keys()
+                 if 'zope.app' in x or 'z3c.testsetup' in x]
+        for m in mlist:
+            del sys.modules[m]
+        plist = [x for x in sys.path if 'zope.app' in x]
+        for p in plist:
+            del sys.path[sys.path.index(p)]
 
+        import z3c.testsetup
+        z3c.testsetup = reload(z3c.testsetup)
+        test.globs['this_directory'] = os.path.split(__file__)[0]
+        test.globs['testrunner_script'] = __file__
+        test.globs['get_basenames_from_suite'] = get_basenames_from_suite
+
+    def tearDown(test):
+        sys.path[:], sys.argv[:] = test.globs['saved-sys-info'][:2]
+        gc.set_threshold(*test.globs['saved-sys-info'][3])
+        sys.modules.clear()
+        sys.modules.update(test.globs['saved-sys-info'][2])
+    suites = [
+        doctest.DocFileSuite(
+        'nozopeapptesting.txt',
+        package='z3c.testsetup',
+        setUp=setUp, tearDown=tearDown,
+        optionflags=doctest.ELLIPSIS+doctest.NORMALIZE_WHITESPACE,
+        checker=checker),
+        ]
+
+    suite = unittest.TestSuite(suites)
+    return suite
+
+
 def suiteFromFile(filename):
     suite = unittest.TestSuite()
     test = doctest.DocFileSuite(filename,
@@ -112,4 +151,5 @@
     for name in TESTFILES:
         suite.addTest(suiteFromFile(name))
     suite.addTest(testrunner_suite())
+    suite.addTest(zopeapptestingless_suite())
     return suite



More information about the Checkins mailing list