def testRemovePermission( self ):
     permManager = PermissionManager( 'test', self._db )
     permManager.grantPermission( 'perm1' )
     permManager.grantPermission( 'perm2' )
     permManager.removePermission( 'perm1' )
     self.assertFalse( permManager.hasPermission( 'perm1' ))
     self.assertTrue( permManager.hasPermission( 'perm2' ))
     permManager.removePermission( 'perm2' )
     self.assertFalse( permManager.hasPermission( 'perm2' ))
     self.assertEmptyPermissionsTable()
    def testHasDeepPermission( self ):
        permManager = PermissionManager( 'group1', self._db )
        permManager.grantPermission( 'group2' )

        permManager = PermissionManager( 'group2', self._db )
        permManager.grantPermission( 'deepPerm' )

        permManager = PermissionManager( 'user', self._db )
        self.assertFalse( permManager.hasPermission( 'group1' ))
        self.assertFalse( permManager.hasPermission( 'deepPerm' ))
        permManager.grantPermission( 'group1' )
        self.assertTrue( permManager.hasPermission( 'group1' ))
        self.assertTrue( permManager.hasPermission( 'deepPerm' ))
 def testHasPermissionByGrantedPermission( self ):
     permManager = PermissionManager( 'test', self._db )
     permManager.grantPermission( 'random' )
     permManager.hasPermission( 'random' )
     self.assertTrue( permManager.hasPermission( 'random' ))
 def testEmptyHasPermission( self ):
     permManager = PermissionManager( 'test', self._db )
     self.assertFalse( permManager.hasPermission( 'random' ))