Avoid double lookup
This commit is contained in:
parent
27a4ef12c6
commit
4aea264026
@ -103,13 +103,13 @@ class Applications(BaseDomainClass):
|
|||||||
return application_role
|
return application_role
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def remove_member(cls, application, user):
|
def remove_member(cls, application, user_id):
|
||||||
application_role = ApplicationRoles.get(
|
application_role = ApplicationRoles.get(
|
||||||
user_id=user.id, application_id=application.id
|
user_id=user_id, application_id=application.id
|
||||||
)
|
)
|
||||||
|
|
||||||
db.session.delete(application_role)
|
db.session.delete(application_role)
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
|
|
||||||
for env in application.environments:
|
for env in application.environments:
|
||||||
EnvironmentRoles.delete(user_id=user.id, environment_id=env.id)
|
EnvironmentRoles.delete(user_id=user_id, environment_id=env.id)
|
||||||
|
@ -8,6 +8,7 @@ from atst.domain.authz.decorator import user_can_access_decorator as user_can
|
|||||||
from atst.domain.environment_roles import EnvironmentRoles
|
from atst.domain.environment_roles import EnvironmentRoles
|
||||||
from atst.domain.exceptions import AlreadyExistsError
|
from atst.domain.exceptions import AlreadyExistsError
|
||||||
from atst.domain.permission_sets import PermissionSets
|
from atst.domain.permission_sets import PermissionSets
|
||||||
|
from atst.domain.users import Users
|
||||||
from atst.forms.application_member import NewForm as NewMemberForm
|
from atst.forms.application_member import NewForm as NewMemberForm
|
||||||
from atst.forms.team import TeamForm
|
from atst.forms.team import TeamForm
|
||||||
from atst.models import Permissions
|
from atst.models import Permissions
|
||||||
@ -166,15 +167,12 @@ def create_member(application_id):
|
|||||||
# TODO: Is this correct??
|
# TODO: Is this correct??
|
||||||
@user_can(Permissions.EDIT_APPLICATION_MEMBER, message="remove application member")
|
@user_can(Permissions.EDIT_APPLICATION_MEMBER, message="remove application member")
|
||||||
def remove_member(application_id, user_id):
|
def remove_member(application_id, user_id):
|
||||||
application_role = ApplicationRoles.get(
|
Applications.remove_member(application=g.application, user_id=user_id)
|
||||||
application_id=application_id, user_id=user_id
|
user = Users.get(user_id)
|
||||||
)
|
|
||||||
|
|
||||||
Applications.remove_member(application=g.application, user=application_role.user)
|
|
||||||
|
|
||||||
flash(
|
flash(
|
||||||
"application_member_removed",
|
"application_member_removed",
|
||||||
user_name=application_role.user.full_name,
|
user_name=user.full_name,
|
||||||
application_name=g.application.name,
|
application_name=g.application.name,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -171,7 +171,7 @@ def test_remove_member():
|
|||||||
user_id=user.id, application_id=application.id
|
user_id=user.id, application_id=application.id
|
||||||
)
|
)
|
||||||
|
|
||||||
Applications.remove_member(application=application, user=member_role.user)
|
Applications.remove_member(application=application, user_id=member_role.user.id)
|
||||||
|
|
||||||
with pytest.raises(NotFoundError):
|
with pytest.raises(NotFoundError):
|
||||||
ApplicationRoles.get(user_id=user.id, application_id=application.id)
|
ApplicationRoles.get(user_id=user.id, application_id=application.id)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user