Esempio n. 1
0
    def test_user_has_permission(self):
        resolver = ActionPermissionsResolver()

        # Admin user, should always return true
        user_db = self.users['admin']
        self.assertTrue(resolver.user_has_permission(user_db=user_db,
                                                     permission_type=PermissionType.ACTION_LIST))

        # Observer, should always return true for VIEW permissions
        user_db = self.users['observer']
        self.assertTrue(resolver.user_has_permission(user_db=user_db,
                                                     permission_type=PermissionType.ACTION_LIST))

        # No roles, should return false for everything
        user_db = self.users['no_roles']
        self.assertFalse(resolver.user_has_permission(user_db=user_db,
                                                      permission_type=PermissionType.ACTION_LIST))

        # Custom role with no permission grants, should return false for everything
        user_db = self.users['1_custom_role_no_permissions']
        self.assertFalse(resolver.user_has_permission(user_db=user_db,
                                                      permission_type=PermissionType.ACTION_LIST))

        # Custom role with "action_list" grant
        user_db = self.users['custom_role_action_list_grant']
        self.assertTrue(resolver.user_has_permission(user_db=user_db,
                                                     permission_type=PermissionType.ACTION_LIST))