# HG changeset patch # User Marcin Kuzminski # Date 2016-11-23 16:23:41 # Node ID 081f50ab66bec73d98b7fcf00e86064f7ee6e5cd # Parent 94d0095b655143bcb19ea9f5cf2bb57d08634472 api: refactor auth helpers to reflect the action they do. - those validators verify and throws expcetions, which is now reflected in the name diff --git a/rhodecode/api/tests/test_utils.py b/rhodecode/api/tests/test_utils.py --- a/rhodecode/api/tests/test_utils.py +++ b/rhodecode/api/tests/test_utils.py @@ -249,7 +249,7 @@ class TestRepoAccess(object): fake_repo = Mock() with self.repo_perm_patch as rmock: rmock.return_value = repo_mock - assert utils.has_repo_permissions( + assert utils.validate_repo_permissions( 'fake_user', 'fake_repo_id', fake_repo, ['perm1', 'perm2']) rmock.assert_called_once_with(*['perm1', 'perm2']) @@ -263,6 +263,6 @@ class TestRepoAccess(object): with self.repo_perm_patch as rmock: rmock.return_value = repo_mock with pytest.raises(JSONRPCError) as excinfo: - utils.has_repo_permissions( + utils.validate_repo_permissions( 'fake_user', 'fake_repo_id', fake_repo, 'perms') assert 'fake_repo_id' in excinfo diff --git a/rhodecode/api/utils.py b/rhodecode/api/utils.py --- a/rhodecode/api/utils.py +++ b/rhodecode/api/utils.py @@ -154,7 +154,7 @@ def has_superadmin_permission(apiuser): return False -def has_repo_permissions(apiuser, repoid, repo, perms): +def validate_repo_permissions(apiuser, repoid, repo, perms): """ Raise JsonRPCError if apiuser is not authorized or return True @@ -188,7 +188,7 @@ def validate_repo_group_permissions(apiu return True -def has_set_owner_permissions(apiuser, owner): +def validate_set_owner_permissions(apiuser, owner): if isinstance(owner, Optional): owner = get_user_or_error(apiuser.user_id) else: diff --git a/rhodecode/api/views/pull_request_api.py b/rhodecode/api/views/pull_request_api.py --- a/rhodecode/api/views/pull_request_api.py +++ b/rhodecode/api/views/pull_request_api.py @@ -25,7 +25,7 @@ from rhodecode.api import jsonrpc_method from rhodecode.api.utils import ( has_superadmin_permission, Optional, OAttr, get_repo_or_error, get_pull_request_or_error, get_commit_or_error, get_user_or_error, - has_repo_permissions, resolve_ref_or_error) + validate_repo_permissions, resolve_ref_or_error) from rhodecode.lib.auth import (HasRepoPermissionAnyApi) from rhodecode.lib.base import vcs_operation_context from rhodecode.lib.utils2 import str2bool @@ -215,7 +215,7 @@ def get_pull_requests(request, apiuser, if not has_superadmin_permission(apiuser): _perms = ( 'repository.admin', 'repository.write', 'repository.read',) - has_repo_permissions(apiuser, repoid, repo, _perms) + validate_repo_permissions(apiuser, repoid, repo, _perms) status = Optional.extract(status) pull_requests = PullRequestModel().get_all(repo, statuses=[status]) @@ -504,7 +504,7 @@ def create_pull_request( target = get_repo_or_error(target_repo) if not has_superadmin_permission(apiuser): _perms = ('repository.admin', 'repository.write', 'repository.read',) - has_repo_permissions(apiuser, source_repo, source, _perms) + validate_repo_permissions(apiuser, source_repo, source, _perms) full_source_ref = resolve_ref_or_error(source_ref, source) full_target_ref = resolve_ref_or_error(target_ref, target)