[Zope-Checkins] SVN: Zope/branches/2.10/lib/python/Testing/ZopeTestCase/ Set and restore the site for functional tests as well

Wichert Akkerman wichert at wiggy.net
Wed Mar 7 20:23:06 EST 2007


Log message for revision 73047:
  Set and restore the site for functional tests as well

Changed:
  U   Zope/branches/2.10/lib/python/Testing/ZopeTestCase/functional.py
  U   Zope/branches/2.10/lib/python/Testing/ZopeTestCase/zopedoctest/functional.py

-=-
Modified: Zope/branches/2.10/lib/python/Testing/ZopeTestCase/functional.py
===================================================================
--- Zope/branches/2.10/lib/python/Testing/ZopeTestCase/functional.py	2007-03-08 00:58:14 UTC (rev 73046)
+++ Zope/branches/2.10/lib/python/Testing/ZopeTestCase/functional.py	2007-03-08 01:23:02 UTC (rev 73047)
@@ -37,6 +37,7 @@
                 request_method='GET', stdin=None, handle_errors=True):
         '''Publishes the object at 'path' returning a response object.'''
 
+        from zope.app.component.hooks import setSite, getSite
         from StringIO import StringIO
         from ZPublisher.Response import Response
         from ZPublisher.Test import publish_module
@@ -47,6 +48,10 @@
         # Save current security manager
         sm = getSecurityManager()
 
+        # And we need to store the old site
+        old_site = getSite()
+        setSite(None)
+
         # Commit the sandbox for good measure
         transaction.commit()
 
@@ -89,6 +94,9 @@
         # Restore security manager
         setSecurityManager(sm)
 
+        # And we need to restore the site again
+        setSite(old_site)
+
         return ResponseWrapper(response, outstream, path)
 
 

Modified: Zope/branches/2.10/lib/python/Testing/ZopeTestCase/zopedoctest/functional.py
===================================================================
--- Zope/branches/2.10/lib/python/Testing/ZopeTestCase/zopedoctest/functional.py	2007-03-08 00:58:14 UTC (rev 73046)
+++ Zope/branches/2.10/lib/python/Testing/ZopeTestCase/zopedoctest/functional.py	2007-03-08 01:23:02 UTC (rev 73047)
@@ -117,6 +117,7 @@
     """
     import urllib
     import rfc822
+    from zope.app.component.hooks import setSite, getSite
     from cStringIO import StringIO
     from ZPublisher.Response import Response
     from ZPublisher.Test import publish_module
@@ -126,6 +127,10 @@
     # Save current Security Manager
     old_sm = getSecurityManager()
 
+    # And we need to store the old site
+    old_site = getSite()
+    setSite(None)
+
     # Commit work done by previous python code.
     transaction.commit()
 
@@ -193,7 +198,10 @@
     # by calling the publish method above
     setSecurityManager(old_sm)
 
+    # And we need to restore the site again
+    setSite(old_site)
     # Sync connection
+
     sync()
 
     return DocResponseWrapper(response, outstream, path, header_output)



More information about the Zope-Checkins mailing list