Allow creating a task order for an existing portfolio

This commit is contained in:
Patrick Smith
2019-01-16 08:13:58 -05:00
parent a010487f34
commit 1cc4c23588
3 changed files with 47 additions and 6 deletions

View File

@@ -48,6 +48,8 @@ def test_create_new_task_order(client, user_session):
task_order_data = TaskOrderFactory.dictionary()
app_info_data = slice_data_for_section(task_order_data, "app_info")
portfolio_name = "Mos Eisley"
app_info_data["portfolio_name"] = portfolio_name
response = client.post(
url_for("task_orders.update", screen=1),
@@ -56,6 +58,11 @@ def test_create_new_task_order(client, user_session):
)
assert url_for("task_orders.new", screen=2) in response.headers["Location"]
created_task_order_id = response.headers["Location"].split("/")[-1]
created_task_order = TaskOrders.get(creator, created_task_order_id)
assert created_task_order.portfolio is not None
assert created_task_order.portfolio.name == portfolio_name
funding_data = slice_data_for_section(task_order_data, "funding")
funding_data = serialize_dates(funding_data)
response = client.post(
@@ -70,6 +77,28 @@ def test_create_new_task_order(client, user_session):
assert url_for("task_orders.new", screen=4) in response.headers["Location"]
def test_create_new_task_order_for_portfolio(client, user_session):
portfolio = PortfolioFactory.create()
creator = portfolio.owner
user_session(creator)
task_order_data = TaskOrderFactory.dictionary()
app_info_data = slice_data_for_section(task_order_data, "app_info")
portfolio_name = "This is ignored for now"
app_info_data["portfolio_name"] = portfolio_name
response = client.post(
url_for("task_orders.update", screen=1, portfolio_id=portfolio.id),
data=app_info_data,
follow_redirects=False,
)
assert url_for("task_orders.new", screen=2) in response.headers["Location"]
created_task_order_id = response.headers["Location"].split("/")[-1]
created_task_order = TaskOrders.get(creator, created_task_order_id)
assert created_task_order.portfolio == portfolio
def test_task_order_form_shows_errors(client, user_session):
creator = UserFactory.create()
user_session(creator)