[Zope-Checkins] CVS: Zope3/lib/python/Zope/App/Security/tests - testRolePermissionManager.py:1.1.2.1 testRolePermissionMap.py:NONE
Barry Warsaw
barry@wooz.org
Thu, 13 Dec 2001 15:28:38 -0500
Update of /cvs-repository/Zope3/lib/python/Zope/App/Security/tests
In directory cvs.zope.org:/tmp/cvs-serv21562/lib/python/Zope/App/Security/tests
Added Files:
Tag: Zope-3x-branch
testRolePermissionManager.py
Removed Files:
Tag: Zope-3x-branch
testRolePermissionMap.py
Log Message:
Because we moved the implementation to the RolePermissionManager
class, we rename the test to match the implementation.
=== Added File Zope3/lib/python/Zope/App/Security/tests/testRolePermissionManager.py ===
# Copyright (c) 2001 Zope Coporation and Contributors. All Rights Reserved.
#
# This software is subject to the provisions of the Zope Public License,
# Version 1.1 (ZPL). A copy of the ZPL should accompany this distribution.
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
# FOR A PARTICULAR PURPOSE.
"""Test handler for RolePermissionManager module."""
import sys
import unittest
from Zope.App.Security.PermissionRegistry import registry as pregistry
from Zope.App.Security.RoleRegistry import registry as rregistry
from Zope.App.Security.RolePermissionManager import manager
class Test(unittest.TestCase):
def tearDown(self):
pregistry._clear()
rregistry._clear()
manager._clear()
def testUnboundRolePermission(self):
permission = pregistry.definePermission('APerm')
role = rregistry.defineRole('ARole')
self.assertEqual(manager.getRolesForPermission(permission), [])
self.assertEqual(manager.getPermissionsForRole(role), [])
def testRolePermission(self):
permission = pregistry.definePermission('APerm')
role = rregistry.defineRole('ARole')
manager.grantPermissionToRole(permission, role)
self.assertEqual(manager.getRolesForPermission(permission), [role])
self.assertEqual(manager.getPermissionsForRole(role), [permission])
def testManyPermissionsOneRole(self):
perm1 = pregistry.definePermission('Perm One')
perm2 = pregistry.definePermission('Perm Two')
role1 = rregistry.defineRole('Role One')
manager.grantPermissionToRole(perm1, role1)
manager.grantPermissionToRole(perm2, role1)
perms = manager.getPermissionsForRole(role1)
self.assertEqual(len(perms), 2)
self.failUnless(perm1 in perms)
self.failUnless(perm2 in perms)
def testManyRolesOnePermission(self):
perm1 = pregistry.definePermission('Perm One')
role1 = rregistry.defineRole('Role One')
role2 = rregistry.defineRole('Role Two')
manager.grantPermissionToRole(perm1, role1)
manager.grantPermissionToRole(perm1, role2)
roles = manager.getRolesForPermission(perm1)
self.assertEqual(len(roles), 2)
self.failUnless(role1 in roles)
self.failUnless(role2 in roles)
def testPermissionsAcquired(self):
perm = pregistry.definePermission('Perm One')
self.failUnless(manager.getPermissionAcquired(perm))
manager.setPermissionAcquired(perm, 0)
self.failIf(manager.getPermissionAcquired(perm))
manager.setPermissionAcquired(perm, 1)
self.failUnless(manager.getPermissionAcquired(perm))
def test_suite():
loader=unittest.TestLoader()
return loader.loadTestsFromTestCase(Test)
if __name__=='__main__':
unittest.TextTestRunner().run(test_suite())
=== Removed File Zope3/lib/python/Zope/App/Security/tests/testRolePermissionMap.py ===