[Zope-Checkins] CVS: Zope3/lib/python/Zope/App/Security/tests - testSecurityManagement.py:1.1.2.9 testSecurityManager.py:1.1.2.7

Fred L. Drake, Jr. fdrake@acm.org
Wed, 27 Feb 2002 17:33:49 -0500


Update of /cvs-repository/Zope3/lib/python/Zope/App/Security/tests
In directory cvs.zope.org:/tmp/cvs-serv18186

Modified Files:
      Tag: Zope-3x-branch
	testSecurityManagement.py testSecurityManager.py 
Log Message:
Reduce the assumptions on the default security policy, and ensure
cleanup is done...cleanly.

=== Zope3/lib/python/Zope/App/Security/tests/testSecurityManagement.py 1.1.2.8 => 1.1.2.9 ===
 from Interface import verify
 
-class Test( unittest.TestCase ):
+import Zope.App.Security.SecurityManagement
+from Zope.App.Security.SecurityManagement import \
+     noSecurityManager, setSecurityPolicy
+
 
-    _oldPolicy = None
+class Test( unittest.TestCase ):
 
     def setUp( self ):
-        from Zope.App.Security.SecurityManagement import noSecurityManager
         noSecurityManager()
-        self._restorePolicy()
+        self._oldPolicy = Zope.App.Security.SecurityManager._defaultPolicy
 
-    tearDown = setUp
+    def tearDown( self ):
+        noSecurityManager()
+        setSecurityPolicy( self._oldPolicy  )
 
     def test_import( self ):
         from Zope.App.Security import SecurityManagement
@@ -82,25 +86,19 @@
         from Zope.App.Security.SecurityManagement import setSecurityPolicy
         from Zope.App.Security.SimpleSecurityPolicies \
                                 import PermissiveSecurityPolicy
-        self._oldPolicy = setSecurityPolicy( PermissiveSecurityPolicy() )
-
-    def _restorePolicy( self ):
-        from Zope.App.Security.SecurityManagement import setSecurityPolicy
-        if self._oldPolicy is not None:
-            setSecurityPolicy( self._oldPolicy  )
+        setSecurityPolicy( PermissiveSecurityPolicy() )
 
     def _setParanoid( self ):
         from Zope.App.Security.SecurityManagement import setSecurityPolicy
         from Zope.App.Security.SimpleSecurityPolicies \
                                 import ParanoidSecurityPolicy
-        self._oldPolicy = setSecurityPolicy( ParanoidSecurityPolicy() )
+        setSecurityPolicy( ParanoidSecurityPolicy() )
 
     def _setNameBased(self, nameChecker):
         from Zope.App.Security.SecurityManagement import setSecurityPolicy
         from Zope.App.Security.SimpleSecurityPolicies \
                                 import NameBasedSecurityPolicy
-        self._oldPolicy = setSecurityPolicy(
-                            NameBasedSecurityPolicy(nameChecker) )
+        setSecurityPolicy( NameBasedSecurityPolicy(nameChecker) )
 
 
     def test_setSecurityPolicy( self ):
@@ -110,6 +108,7 @@
         from Zope.Exceptions import Unauthorized
 
         # test against default policy (paranoid)
+        self._setParanoid()
         noSecurityManager()
         mgr = getSecurityManager()
         self.assertRaises( Unauthorized, mgr.validate, None, None )
@@ -125,7 +124,6 @@
         self.failUnless( mgr.checkPermission( None, None ) )
 
         # test against explicit paranoid policy
-        self._restorePolicy()
         self._setParanoid()
         noSecurityManager()
         mgr = getSecurityManager()
@@ -136,7 +134,6 @@
         # test against name based policy
         def allowFoo(name): 
             if name != 'foo': raise Unauthorized
-        self._restorePolicy()
         self._setNameBased(allowFoo)
         noSecurityManager()
         mgr = getSecurityManager()


=== Zope3/lib/python/Zope/App/Security/tests/testSecurityManager.py 1.1.2.6 => 1.1.2.7 ===
 from Interface import verify
 
-from Zope.App.Security.SimpleSecurityPolicies import PermissiveSecurityPolicy
+from Zope.App.Security import SecurityManager
+from Zope.App.Security.SimpleSecurityPolicies import \
+     ParanoidSecurityPolicy, PermissiveSecurityPolicy
 from Zope.App.Security.SecurityContext import SecurityContext
 from Zope.Exceptions import Unauthorized
 
@@ -30,17 +32,16 @@
 
 class Test( unittest.TestCase ):
 
-    _oldPolicy = None
-
     def setUp( self ):
 
+        self._oldPolicy = SecurityManager._defaultPolicy
+        SecurityManager.setSecurityPolicy( ParanoidSecurityPolicy() )
         self._context = SecurityContext( 'xyzzy' )
 
     def tearDown( self ):
 
-        if self._oldPolicy is not None:
-            from Zope.App.Security.SecurityManager import setSecurityPolicy
-            setSecurityPolicy( self._oldPolicy )
+        from Zope.App.Security.SecurityManager import setSecurityPolicy
+        setSecurityPolicy( self._oldPolicy )
 
     def _makeMgr( self ):
         
@@ -51,7 +52,7 @@
     def _setPermissive( self ):
 
         from Zope.App.Security.SecurityManager import setSecurityPolicy
-        self._oldPolicy = setSecurityPolicy( PermissiveSecurityPolicy() )
+        setSecurityPolicy( PermissiveSecurityPolicy() )
             
     def test_import( self ):