Manage invitations should be inactive until user has completed TO flow

This commit is contained in:
George Drummond
2019-02-19 10:16:38 -05:00
parent f0099a2e4a
commit ff1379a3ff
4 changed files with 59 additions and 11 deletions

View File

@@ -5,6 +5,7 @@ from datetime import timedelta, date
from atst.domain.roles import Roles
from atst.domain.task_orders import TaskOrders
from atst.models.portfolio_role import Status as PortfolioStatus
from atst.utils.localization import translate
from tests.factories import (
PortfolioFactory,
@@ -178,6 +179,7 @@ def test_ko_can_view_task_order(client, user_session):
)
task_order = TaskOrderFactory.create(portfolio=portfolio, contracting_officer=ko)
user_session(ko)
response = client.get(
url_for(
"portfolios.view_task_order",
@@ -186,9 +188,21 @@ def test_ko_can_view_task_order(client, user_session):
)
)
assert response.status_code == 200
assert translate("common.manage") in response.data.decode()
TaskOrders.update(ko, task_order, clin_01=None)
response = client.get(
url_for(
"portfolios.view_task_order",
portfolio_id=portfolio.id,
task_order_id=task_order.id,
)
)
assert response.status_code == 200
assert translate("common.manage") not in response.data.decode()
def test_can_view_task_order_invitations(client, user_session):
def test_can_view_task_order_invitations_when_complete(client, user_session):
portfolio = PortfolioFactory.create()
user_session(portfolio.owner)
task_order = TaskOrderFactory.create(portfolio=portfolio)
@@ -202,6 +216,27 @@ def test_can_view_task_order_invitations(client, user_session):
assert response.status_code == 200
def test_cant_view_task_order_invitations_when_not_complete(client, user_session):
portfolio = PortfolioFactory.create()
user_session(portfolio.owner)
task_order = TaskOrderFactory.create(portfolio=portfolio, clin_01=None)
response = client.get(
url_for(
"portfolios.task_order_invitations",
portfolio_id=portfolio.id,
task_order_id=task_order.id,
)
)
assert (
url_for(
"portfolios.view_task_order",
task_order_id=task_order.id,
portfolio_id=portfolio.id,
)
in response.location
)
def test_ko_can_view_ko_review_page(client, user_session):
portfolio = PortfolioFactory.create()
ko = UserFactory.create()