From dd2ac62903ac2ca17fa2cbad47e48100f780d53a Mon Sep 17 00:00:00 2001 From: dandds Date: Wed, 23 Jan 2019 15:12:41 -0500 Subject: [PATCH] ensure KO can view task order page --- atst/domain/roles.py | 6 ++++- tests/routes/portfolios/test_task_orders.py | 26 +++++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/atst/domain/roles.py b/atst/domain/roles.py index df304274..12d9a6c6 100644 --- a/atst/domain/roles.py +++ b/atst/domain/roles.py @@ -153,7 +153,11 @@ PORTFOLIO_ROLES = [ "name": "officer", "description": "Officer involved with setting up a Task Order", "display_name": "Task Order Officer", - "permissions": [], + "permissions": [ + Permissions.VIEW_PORTFOLIO, + Permissions.VIEW_USAGE_REPORT, + Permissions.VIEW_USAGE_DOLLARS, + ], }, ] diff --git a/tests/routes/portfolios/test_task_orders.py b/tests/routes/portfolios/test_task_orders.py index 1b2c6aba..f1bb3425 100644 --- a/tests/routes/portfolios/test_task_orders.py +++ b/tests/routes/portfolios/test_task_orders.py @@ -1,9 +1,14 @@ from flask import url_for import pytest +from atst.domain.roles import Roles +from atst.models.portfolio_role import Status as PortfolioStatus + from tests.factories import ( PortfolioFactory, + PortfolioRoleFactory, TaskOrderFactory, + UserFactory, random_future_date, random_past_date, ) @@ -60,3 +65,24 @@ class TestPortfolioFunding: _, context = templates[0] assert context["funding_end_date"] is end_date assert context["total_balance"] == active_to1.budget + active_to2.budget + + +def test_ko_can_view_task_order(client, user_session): + portfolio = PortfolioFactory.create() + ko = UserFactory.create() + PortfolioRoleFactory.create( + role=Roles.get("officer"), + portfolio=portfolio, + user=ko, + status=PortfolioStatus.ACTIVE, + ) + task_order = TaskOrderFactory.create(portfolio=portfolio, contracting_officer=ko) + user_session(ko) + response = client.get( + url_for( + "portfolios.view_task_order", + portfolio_id=portfolio.id, + task_order_id=task_order.id, + ) + ) + assert response.status_code == 200