more granular invitation status and a display status for workspace members
This commit is contained in:
@@ -1,9 +1,17 @@
|
||||
import datetime
|
||||
|
||||
from atst.domain.environments import Environments
|
||||
from atst.domain.workspaces import Workspaces
|
||||
from atst.domain.projects import Projects
|
||||
from atst.domain.workspace_users import WorkspaceUsers
|
||||
from atst.models.invitation import Status
|
||||
from tests.factories import RequestFactory, UserFactory, InvitationFactory, WorkspaceRoleFactory
|
||||
from atst.models.workspace_role import Status
|
||||
from atst.models.invitation import Status as InvitationStatus
|
||||
from tests.factories import (
|
||||
RequestFactory,
|
||||
UserFactory,
|
||||
InvitationFactory,
|
||||
WorkspaceRoleFactory,
|
||||
)
|
||||
|
||||
|
||||
def test_has_no_environment_roles():
|
||||
@@ -57,8 +65,34 @@ def test_role_displayname():
|
||||
assert workspace_user.role_displayname == "Developer"
|
||||
|
||||
|
||||
def test_status_when_member_has_pending_invitation():
|
||||
def test_status_when_member_is_active():
|
||||
workspace_role = WorkspaceRoleFactory.create(status=Status.ACTIVE)
|
||||
assert workspace_role.display_status == "Active"
|
||||
|
||||
|
||||
def test_status_when_invitation_has_been_rejected_for_expirations():
|
||||
workspace_role = WorkspaceRoleFactory.create(
|
||||
invitations=[InvitationFactory.create(status=Status.ACCEPTED)]
|
||||
invitations=[InvitationFactory.create(status=InvitationStatus.REJECTED_EXPIRED)]
|
||||
)
|
||||
assert workspace_role.display_status == "Accepted"
|
||||
assert workspace_role.display_status == "Invite expired"
|
||||
|
||||
|
||||
def test_status_when_invitation_has_been_rejected_for_wrong_user():
|
||||
workspace_role = WorkspaceRoleFactory.create(
|
||||
invitations=[
|
||||
InvitationFactory.create(status=InvitationStatus.REJECTED_WRONG_USER)
|
||||
]
|
||||
)
|
||||
assert workspace_role.display_status == "Error on invite"
|
||||
|
||||
|
||||
def test_status_when_invitation_is_expired():
|
||||
workspace_role = WorkspaceRoleFactory.create(
|
||||
invitations=[
|
||||
InvitationFactory.create(
|
||||
status=InvitationStatus.PENDING,
|
||||
expiration_time=datetime.datetime.now() - datetime.timedelta(seconds=1),
|
||||
)
|
||||
]
|
||||
)
|
||||
assert workspace_role.display_status == "Invite expired"
|
||||
|
Reference in New Issue
Block a user