Fix displaying workspace role selection on edit member page

This commit is contained in:
Patrick Smith 2018-11-06 16:32:43 -05:00
parent d3c4c159fd
commit ea24c65e4a
2 changed files with 16 additions and 4 deletions

View File

@ -291,7 +291,7 @@ def view_member(workspace_id, member_id):
) )
member = WorkspaceRoles.get(workspace_id, member_id) member = WorkspaceRoles.get(workspace_id, member_id)
projects = Projects.get_all(g.current_user, member, workspace) 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 editable = g.current_user == member.user
return render_template( return render_template(
"workspaces/members/edit.html", "workspaces/members/edit.html",

View File

@ -198,15 +198,27 @@ def test_create_member(client, user_session):
assert len(queue.get_queue()) == queue_length + 1 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): def test_permissions_for_view_member(client, user_session):
user = UserFactory.create() user = UserFactory.create()
workspace = WorkspaceFactory.create() workspace = WorkspaceFactory.create()
Workspaces._create_workspace_role(user, workspace, "developer") Workspaces._create_workspace_role(user, workspace, "developer")
member = WorkspaceRoles.add(user, workspace.id, "developer") member = WorkspaceRoles.add(user, workspace.id, "developer")
user_session(user) user_session(user)
response = client.post( response = client.get(
url_for("workspaces.view_member", workspace_id=workspace.id, member_id=user.id), url_for("workspaces.view_member", workspace_id=workspace.id, member_id=user.id)
follow_redirects=True,
) )
assert response.status_code == 404 assert response.status_code == 404