api: refactor auth helpers to reflect the action they do.
- those validators verify and throws expcetions, which is now reflected in the name
This commit is contained in:
parent
1943efb1b8
commit
2a8b58692d
3 changed files with 7 additions and 7 deletions
|
|
@ -249,7 +249,7 @@ class TestRepoAccess(object):
|
||||||
fake_repo = Mock()
|
fake_repo = Mock()
|
||||||
with self.repo_perm_patch as rmock:
|
with self.repo_perm_patch as rmock:
|
||||||
rmock.return_value = repo_mock
|
rmock.return_value = repo_mock
|
||||||
assert utils.has_repo_permissions(
|
assert utils.validate_repo_permissions(
|
||||||
'fake_user', 'fake_repo_id', fake_repo,
|
'fake_user', 'fake_repo_id', fake_repo,
|
||||||
['perm1', 'perm2'])
|
['perm1', 'perm2'])
|
||||||
rmock.assert_called_once_with(*['perm1', 'perm2'])
|
rmock.assert_called_once_with(*['perm1', 'perm2'])
|
||||||
|
|
@ -263,6 +263,6 @@ class TestRepoAccess(object):
|
||||||
with self.repo_perm_patch as rmock:
|
with self.repo_perm_patch as rmock:
|
||||||
rmock.return_value = repo_mock
|
rmock.return_value = repo_mock
|
||||||
with pytest.raises(JSONRPCError) as excinfo:
|
with pytest.raises(JSONRPCError) as excinfo:
|
||||||
utils.has_repo_permissions(
|
utils.validate_repo_permissions(
|
||||||
'fake_user', 'fake_repo_id', fake_repo, 'perms')
|
'fake_user', 'fake_repo_id', fake_repo, 'perms')
|
||||||
assert 'fake_repo_id' in excinfo
|
assert 'fake_repo_id' in excinfo
|
||||||
|
|
|
||||||
|
|
@ -154,7 +154,7 @@ def has_superadmin_permission(apiuser):
|
||||||
return False
|
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
|
Raise JsonRPCError if apiuser is not authorized or return True
|
||||||
|
|
||||||
|
|
@ -188,7 +188,7 @@ def validate_repo_group_permissions(apiuser, repogroupid, repo_group, perms):
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
||||||
def has_set_owner_permissions(apiuser, owner):
|
def validate_set_owner_permissions(apiuser, owner):
|
||||||
if isinstance(owner, Optional):
|
if isinstance(owner, Optional):
|
||||||
owner = get_user_or_error(apiuser.user_id)
|
owner = get_user_or_error(apiuser.user_id)
|
||||||
else:
|
else:
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@ from rhodecode.api import jsonrpc_method, JSONRPCError
|
||||||
from rhodecode.api.utils import (
|
from rhodecode.api.utils import (
|
||||||
has_superadmin_permission, Optional, OAttr, get_repo_or_error,
|
has_superadmin_permission, Optional, OAttr, get_repo_or_error,
|
||||||
get_pull_request_or_error, get_commit_or_error, get_user_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.auth import (HasRepoPermissionAnyApi)
|
||||||
from rhodecode.lib.base import vcs_operation_context
|
from rhodecode.lib.base import vcs_operation_context
|
||||||
from rhodecode.lib.utils2 import str2bool
|
from rhodecode.lib.utils2 import str2bool
|
||||||
|
|
@ -215,7 +215,7 @@ def get_pull_requests(request, apiuser, repoid, status=Optional('new')):
|
||||||
if not has_superadmin_permission(apiuser):
|
if not has_superadmin_permission(apiuser):
|
||||||
_perms = (
|
_perms = (
|
||||||
'repository.admin', 'repository.write', 'repository.read',)
|
'repository.admin', 'repository.write', 'repository.read',)
|
||||||
has_repo_permissions(apiuser, repoid, repo, _perms)
|
validate_repo_permissions(apiuser, repoid, repo, _perms)
|
||||||
|
|
||||||
status = Optional.extract(status)
|
status = Optional.extract(status)
|
||||||
pull_requests = PullRequestModel().get_all(repo, statuses=[status])
|
pull_requests = PullRequestModel().get_all(repo, statuses=[status])
|
||||||
|
|
@ -504,7 +504,7 @@ def create_pull_request(
|
||||||
target = get_repo_or_error(target_repo)
|
target = get_repo_or_error(target_repo)
|
||||||
if not has_superadmin_permission(apiuser):
|
if not has_superadmin_permission(apiuser):
|
||||||
_perms = ('repository.admin', 'repository.write', 'repository.read',)
|
_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_source_ref = resolve_ref_or_error(source_ref, source)
|
||||||
full_target_ref = resolve_ref_or_error(target_ref, target)
|
full_target_ref = resolve_ref_or_error(target_ref, target)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue