diff --git a/atst/routes/workspaces.py b/atst/routes/workspaces.py index b62c6274..8a1aa05a 100644 --- a/atst/routes/workspaces.py +++ b/atst/routes/workspaces.py @@ -291,7 +291,7 @@ def view_member(workspace_id, member_id): ) member = WorkspaceRoles.get(workspace_id, member_id) projects = Projects.get_all(g.current_user, member, workspace) - form = EditMemberForm(workspace_role=member.role) + form = EditMemberForm(workspace_role=member.role_name) editable = g.current_user == member.user return render_template( "workspaces/members/edit.html", diff --git a/tests/routes/test_workspaces.py b/tests/routes/test_workspaces.py index f2c67528..9e8d3342 100644 --- a/tests/routes/test_workspaces.py +++ b/tests/routes/test_workspaces.py @@ -198,15 +198,27 @@ def test_create_member(client, user_session): assert len(queue.get_queue()) == queue_length + 1 +def test_view_member_shows_role(client, user_session): + user = UserFactory.create() + workspace = WorkspaceFactory.create() + Workspaces._create_workspace_role(user, workspace, "developer") + member = WorkspaceRoles.add(user, workspace.id, "developer") + user_session(workspace.owner) + response = client.get( + url_for("workspaces.view_member", workspace_id=workspace.id, member_id=user.id) + ) + assert response.status_code == 200 + assert "initial-choice='developer'".encode() in response.data + + def test_permissions_for_view_member(client, user_session): user = UserFactory.create() workspace = WorkspaceFactory.create() Workspaces._create_workspace_role(user, workspace, "developer") member = WorkspaceRoles.add(user, workspace.id, "developer") user_session(user) - response = client.post( - url_for("workspaces.view_member", workspace_id=workspace.id, member_id=user.id), - follow_redirects=True, + response = client.get( + url_for("workspaces.view_member", workspace_id=workspace.id, member_id=user.id) ) assert response.status_code == 404