[Zope-Checkins] CVS: Zope/lib/python/AccessControl/securitySuite - ResultObject.py:1.2 SecurityBase.py:1.3 testSecurity.py:1.9

Andreas Jung andreas@zope.com
Tue, 9 Oct 2001 10:40:53 -0400


Update of /cvs-repository/Zope/lib/python/AccessControl/securitySuite
In directory cvs.zope.org:/tmp/cvs-serv24206

Modified Files:
	ResultObject.py SecurityBase.py testSecurity.py 
Log Message:
- updated tests
- better debug messages 


=== Zope/lib/python/AccessControl/securitySuite/ResultObject.py 1.1 => 1.2 ===
     """
 
-    def __str__(self,expected=-1):
+    def __str__(self,expected=-1,with_output=1):
         s  = '\n'
         s+= '-'*78
         s+= "\nRequest: %s" % self.request
         s+= "\nUser: %s" % self.user
         s+= "\nExpected: %s" % expected + "  got: %s %s" % (self.code,self.return_text)
-        s+= "\nOutput:"
-        s+= self.output
+        if with_output:
+            s+= "\nOutput:"
+            s+= self.output
         s+= "\n"
 
         return s


=== Zope/lib/python/AccessControl/securitySuite/SecurityBase.py 1.2 => 1.3 ===
         if expected_code != res.code:
            raise AssertionError, \
-              self._request_debug(args,kw) 
+              self._request_debug(res,expected_code,args,kw) 
 
 
     ################################################################
@@ -205,9 +205,11 @@
         return s
 
 
-    def _request_debug(self,*args,**kw):
+    def _request_debug(self,res,expected,args,kw):
+        
         s = 'Args: %s' % str(args)        
         s+= ', KW: %s' % str(kw)
+        s+= '\n%s\n' % res.__str__(with_output=0,expected=expected)
 
         return s
  


=== Zope/lib/python/AccessControl/securitySuite/testSecurity.py 1.8 => 1.9 ===
 )
 
+def getAuth(username):
+
+    for user in USERS:
+        if user.username==username:
+            return "%s:%s" % (user.username,user.password)
+
+    raise KeyError,"no such username: %" % username
+
 
 class AVeryBasicSecurityTest(SecurityBase.SecurityBase):
 
@@ -297,8 +305,31 @@
     def testZPublisherAccess(self):
         """ test access through ZPublisher """
 
-        _r = [ ('/test/f1/',None,200),
-               ('/test/f1/anonobj','manager:123',200),
+        _r = [
+               ('/test/f1/',                        None,    200),
+               ('/test/f2',                         None,    200),
+               ('/test/f2/f3',                      None,    200),
+               ('/test/f2/f3/obj3/public_func',     None,    200),
+               ('/test/f2/f3/obj3/protected_func',  None,    401),
+               ('/test/f2/f3/obj3/manage_func',     None,    401),
+               ('/test/f2/f3/obj3/private_func',    None,    401),
+
+               ('/test/f1/',                        getAuth('manager'),    200),
+               ('/test/f2',                         getAuth('manager'),    200),
+               ('/test/f2/f3',                      getAuth('manager'),    200),
+               ('/test/f2/f3/obj3/public_func',     getAuth('manager'),    200),
+               ('/test/f2/f3/obj3/protected_func',  getAuth('manager'),    200),
+               ('/test/f2/f3/obj3/manage_func',     getAuth('manager'),    200),
+               ('/test/f2/f3/obj3/private_func',    getAuth('manager'),    401),
+
+               ('/test/f1/',                        getAuth('owner'),    200),
+               ('/test/f2',                         getAuth('owner'),    200),
+               ('/test/f2/f3',                      getAuth('owner'),    200),
+               ('/test/f2/f3/obj3/public_func',     getAuth('owner'),    200),
+               ('/test/f2/f3/obj3/protected_func',  getAuth('owner'),    200),
+               ('/test/f2/f3/obj3/manage_func',     getAuth('owner'),    401),
+               ('/test/f2/f3/obj3/private_func',    getAuth('owner'),    401),
+
               ]
 
         for path,auth,expected in _r: