display security officer info as defaults for dd 254 form
This commit is contained in:
parent
99ef82e78b
commit
139e31b9a4
@ -157,10 +157,28 @@ def edit_task_order_invitations(portfolio_id, task_order_id):
|
||||
)
|
||||
|
||||
|
||||
def so_review_form(task_order):
|
||||
if task_order.dd_254:
|
||||
dd_254 = task_order.dd_254
|
||||
form = DD254Form(obj=dd_254)
|
||||
form.required_distribution.data = dd_254.required_distribution
|
||||
return form
|
||||
else:
|
||||
so = task_order.officer_dictionary("security_officer")
|
||||
form_data = {
|
||||
"certifying_official": "{} {}".format(
|
||||
so.get("first_name"), so.get("last_name")
|
||||
),
|
||||
"co_phone": so["phone_number"],
|
||||
}
|
||||
return DD254Form(data=form_data)
|
||||
|
||||
|
||||
@portfolios_bp.route("/portfolios/<portfolio_id>/task_order/<task_order_id>/dd254")
|
||||
def so_review(portfolio_id, task_order_id):
|
||||
task_order = TaskOrders.get(g.current_user, task_order_id)
|
||||
form = DD254Form()
|
||||
|
||||
Authorization.check_is_so(g.current_user, task_order)
|
||||
|
||||
form = so_review_form(task_order)
|
||||
|
||||
return render_template("portfolios/task_orders/so_review.html", form=form)
|
||||
|
@ -316,7 +316,7 @@ def test_submit_completed_ko_review_page(client, user_session, pdf_upload):
|
||||
)
|
||||
|
||||
|
||||
def test_so_can_view_so_review_page(client, user_session):
|
||||
def test_so_review_page(app, client, user_session):
|
||||
portfolio = PortfolioFactory.create()
|
||||
so = UserFactory.create()
|
||||
PortfolioRoleFactory.create(
|
||||
@ -337,12 +337,19 @@ def test_so_can_view_so_review_page(client, user_session):
|
||||
)
|
||||
assert owner_response.status_code == 404
|
||||
|
||||
user_session(so)
|
||||
so_response = client.get(
|
||||
url_for(
|
||||
"portfolios.so_review",
|
||||
portfolio_id=portfolio.id,
|
||||
task_order_id=task_order.id,
|
||||
with captured_templates(app) as templates:
|
||||
user_session(so)
|
||||
so_response = app.test_client().get(
|
||||
url_for(
|
||||
"portfolios.so_review",
|
||||
portfolio_id=portfolio.id,
|
||||
task_order_id=task_order.id,
|
||||
)
|
||||
)
|
||||
_, context = templates[0]
|
||||
form = context["form"]
|
||||
co_name = form.certifying_official.data
|
||||
assert so_response.status_code == 200
|
||||
assert (
|
||||
task_order.so_first_name in co_name and task_order.so_last_name in co_name
|
||||
)
|
||||
)
|
||||
assert so_response.status_code == 200
|
||||
|
Loading…
x
Reference in New Issue
Block a user