From a5f3061d99611fe240425e7c04295c14a0f33e25 Mon Sep 17 00:00:00 2001 From: Montana Date: Tue, 28 Aug 2018 12:48:19 -0400 Subject: [PATCH] Tests for viewing Add Project and Add Member buttons --- tests/routes/test_workspaces.py | 53 +++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 tests/routes/test_workspaces.py diff --git a/tests/routes/test_workspaces.py b/tests/routes/test_workspaces.py new file mode 100644 index 00000000..202a8127 --- /dev/null +++ b/tests/routes/test_workspaces.py @@ -0,0 +1,53 @@ +from tests.factories import UserFactory, WorkspaceFactory +from atst.domain.workspaces import Workspaces +from atst.models.workspace_user import WorkspaceUser + + +def test_user_with_permission_has_add_project_link(client, user_session): + user = UserFactory.create() + workspace = WorkspaceFactory.create() + Workspaces._create_workspace_role(user, workspace, "owner") + + user_session(user) + response = client.get("/workspaces/{}/projects".format(workspace.id)) + assert ( + 'href="/workspaces/{}/projects/new"'.format(workspace.id).encode() + in response.data + ) + + +def test_user_without_permission_has_no_add_project_link(client, user_session): + user = UserFactory.create() + workspace = WorkspaceFactory.create() + Workspaces._create_workspace_role(user, workspace, "developer") + user_session(user) + response = client.get("/workspaces/{}/projects".format(workspace.id)) + assert ( + 'href="/workspaces/{}/projects/new"'.format(workspace.id).encode() + not in response.data + ) + + +def test_user_with_permission_has_add_member_link(client, user_session): + user = UserFactory.create() + workspace = WorkspaceFactory.create() + Workspaces._create_workspace_role(user, workspace, "owner") + + user_session(user) + response = client.get("/workspaces/{}/members".format(workspace.id)) + assert ( + 'href="/workspaces/{}/members/new"'.format(workspace.id).encode() + in response.data + ) + + +def test_user_without_permission_has_no_add_member_link(client, user_session): + user = UserFactory.create() + workspace = WorkspaceFactory.create() + Workspaces._create_workspace_role(user, workspace, "developer") + user_session(user) + response = client.get("/workspaces/{}/members".format(workspace.id)) + assert ( + 'href="/workspaces/{}/members/new"'.format(workspace.id).encode() + not in response.data + )