Disable the App Role when revoking an invite.
This commit is contained in:
parent
200fa225cc
commit
91ce3dda9e
@ -142,3 +142,9 @@ class PortfolioInvitations(BaseInvitations):
|
||||
class ApplicationInvitations(BaseInvitations):
|
||||
model = ApplicationInvitation
|
||||
role_domain_class = ApplicationRoles
|
||||
|
||||
@classmethod
|
||||
def revoke(cls, token):
|
||||
invite = super().revoke(token)
|
||||
ApplicationRoles.disable(invite.role)
|
||||
return invite
|
||||
|
@ -86,3 +86,4 @@ def test_disable(session):
|
||||
session.refresh(environment_role)
|
||||
assert member_role.status == ApplicationRoleStatus.DISABLED
|
||||
assert environment_role.status == EnvironmentRole.Status.PENDING_DELETE
|
||||
assert member_role.deleted == True
|
||||
|
@ -1,3 +1,5 @@
|
||||
from atst.domain.application_roles import ApplicationRoles
|
||||
from atst.models import ApplicationRoleStatus
|
||||
from atst.models import AuditEvent
|
||||
|
||||
from tests.factories import (
|
||||
@ -16,6 +18,22 @@ def test_application_environments_excludes_deleted():
|
||||
assert app.environments[0].id == env.id
|
||||
|
||||
|
||||
def test_application_members_excludes_deleted(session):
|
||||
app = ApplicationFactory.create()
|
||||
member_role = ApplicationRoleFactory.create(
|
||||
application=app, status=ApplicationRoleStatus.ACTIVE
|
||||
)
|
||||
disabled_role = ApplicationRoleFactory.create(
|
||||
application=app, status=ApplicationRoleStatus.DISABLED
|
||||
)
|
||||
disabled_role.deleted = True
|
||||
session.add(disabled_role)
|
||||
session.commit()
|
||||
|
||||
assert len(app.members) == 1
|
||||
assert app.members[0].id == member_role.id
|
||||
|
||||
|
||||
def test_audit_event_for_application_deletion(session):
|
||||
app = ApplicationFactory.create()
|
||||
app.deleted = True
|
||||
|
@ -10,6 +10,7 @@ from atst.domain.application_roles import ApplicationRoles
|
||||
from atst.domain.environment_roles import EnvironmentRoles
|
||||
from atst.domain.common import Paginator
|
||||
from atst.domain.permission_sets import PermissionSets
|
||||
from atst.models.application_role import Status as ApplicationRoleStatus
|
||||
from atst.models.environment_role import CSPRole
|
||||
from atst.models.permissions import Permissions
|
||||
from atst.forms.application import EditEnvironmentForm
|
||||
@ -553,6 +554,8 @@ def test_revoke_invite(client, user_session):
|
||||
)
|
||||
|
||||
assert invite.is_revoked
|
||||
assert app_role.status == ApplicationRoleStatus.DISABLED
|
||||
assert app_role.deleted
|
||||
|
||||
|
||||
def test_filter_environment_roles():
|
||||
|
Loading…
x
Reference in New Issue
Block a user