def test_unacquired_permission_skip_purge(self): ACI = 'Access contents information' VIEW = 'View' self.root.site = Folder(id='site') site = self.root.site site.manage_permission(VIEW, ()) existing_allowed = [ x['name'] for x in site.rolesOfPermission(ACI) if x['selected'] ] self.assertEqual(existing_allowed, ['Manager']) self.failUnless(site.acquiredRolesAreUsedBy(ACI)) self.failIf(site.acquiredRolesAreUsedBy(VIEW)) context = DummyImportContext(site, False) context._files['rolemap.xml'] = _UNACQUIRED_EXPORT from Products.CMFSetup.rolemap import importRolemap importRolemap(context) new_allowed = [ x['name'] for x in site.rolesOfPermission(ACI) if x['selected'] ] self.assertEqual(new_allowed, ['Manager', 'Owner']) self.failIf(site.acquiredRolesAreUsedBy(ACI)) self.failIf(site.acquiredRolesAreUsedBy(VIEW))
def test_unacquired_permission_skip_purge( self ): ACI = 'Access contents information' VIEW = 'View' self.root.site = Folder( id='site' ) site = self.root.site site.manage_permission( VIEW, () ) existing_allowed = [ x[ 'name' ] for x in site.rolesOfPermission( ACI ) if x[ 'selected' ] ] self.assertEqual( existing_allowed, [ 'Manager' ] ) self.failUnless( site.acquiredRolesAreUsedBy( ACI ) ) self.failIf( site.acquiredRolesAreUsedBy( VIEW ) ) context = DummyImportContext( site, False ) context._files[ 'rolemap.xml' ] = _UNACQUIRED_EXPORT from Products.CMFSetup.rolemap import importRolemap importRolemap( context ) new_allowed = [ x[ 'name' ] for x in site.rolesOfPermission( ACI ) if x[ 'selected' ] ] self.assertEqual( new_allowed, [ 'Manager', 'Owner' ] ) self.failIf( site.acquiredRolesAreUsedBy( ACI ) ) self.failIf( site.acquiredRolesAreUsedBy( VIEW ) )
def test_empty_skip_purge(self): self.root.site = Folder(id='site') site = self.root.site original_roles = list(getattr(site, '__ac_roles__', []))[:] modified_roles = original_roles[:] modified_roles.append('ZZZ') site.__ac_roles__ = modified_roles context = DummyImportContext(site, False) context._files['rolemap.xml'] = _EMPTY_EXPORT from Products.CMFSetup.rolemap import importRolemap importRolemap(context) new_roles = list(getattr(site, '__ac_roles__', []))[:] modified_roles.sort() new_roles.sort() self.assertEqual(modified_roles, new_roles)
def test_empty_skip_purge( self ): self.root.site = Folder( id='site' ) site = self.root.site original_roles = list( getattr( site, '__ac_roles__', [] ) )[:] modified_roles = original_roles[:] modified_roles.append( 'ZZZ' ) site.__ac_roles__ = modified_roles context = DummyImportContext( site, False ) context._files[ 'rolemap.xml' ] = _EMPTY_EXPORT from Products.CMFSetup.rolemap import importRolemap importRolemap( context ) new_roles = list( getattr( site, '__ac_roles__', [] ) )[:] modified_roles.sort() new_roles.sort() self.assertEqual( modified_roles, new_roles )