Merge pull request #425 from dod-ccpo/fix-attachment-error
Fix bug where finver page tries to render task order PDF
This commit is contained in:
commit
673e6efbce
@ -30,12 +30,12 @@ class FinancialVerificationBase(object):
|
||||
_formdata = ImmutableMultiDict(formdata) if formdata is not None else None
|
||||
fv = FinancialVerification(request)
|
||||
form = FinancialVerificationForm(obj=fv, formdata=_formdata)
|
||||
if is_extended:
|
||||
try:
|
||||
attachment = Attachment.get_for_resource("task_order", self.request.id)
|
||||
form.task_order.pdf.data = attachment.filename
|
||||
except NotFoundError:
|
||||
pass
|
||||
|
||||
try:
|
||||
attachment = Attachment.get_for_resource("task_order", self.request.id)
|
||||
form.task_order.pdf.data = attachment.filename
|
||||
except NotFoundError:
|
||||
pass
|
||||
|
||||
return form
|
||||
|
||||
@ -173,7 +173,7 @@ class SaveFinancialVerificationDraft(FinancialVerificationBase):
|
||||
if not form.validate_draft():
|
||||
self._raise(form)
|
||||
|
||||
if not self.pe_validator.validate(self.request, form.pe_id):
|
||||
if form.pe_id.data and not self.pe_validator.validate(self.request, form.pe_id):
|
||||
valid = False
|
||||
|
||||
if form.task_order.number.data and not self.task_order_validator.validate(
|
||||
|
@ -111,6 +111,20 @@ def test_update_fv_invalid_task_order_number(fv_data):
|
||||
update_fv.execute()
|
||||
|
||||
|
||||
def test_draft_without_pe_id(fv_data):
|
||||
request = RequestFactory.create()
|
||||
user = UserFactory.create()
|
||||
data = {"request-uii_ids": "1234"}
|
||||
assert SaveFinancialVerificationDraft(
|
||||
PENumberValidator(),
|
||||
TaskOrderNumberValidator(),
|
||||
user,
|
||||
request,
|
||||
data,
|
||||
is_extended=False,
|
||||
).execute()
|
||||
|
||||
|
||||
def test_update_fv_extended(fv_data, e_fv_data):
|
||||
request = RequestFactory.create()
|
||||
user = UserFactory.create()
|
||||
@ -403,6 +417,31 @@ def test_eda_task_order_does_trigger_approval(client, user_session, fv_data, e_f
|
||||
assert updated_request.status == RequestStatus.APPROVED
|
||||
|
||||
|
||||
def test_attachment_on_non_extended_form(client, user_session, fv_data, e_fv_data):
|
||||
user = UserFactory.create()
|
||||
request = RequestFactory.create(creator=user)
|
||||
data = {
|
||||
**fv_data,
|
||||
**e_fv_data,
|
||||
"task_order-number": MockEDAClient.MOCK_CONTRACT_NUMBER,
|
||||
"request-pe_id": "0101228N",
|
||||
}
|
||||
user_session(user)
|
||||
client.post(
|
||||
url_for(
|
||||
"requests.financial_verification", request_id=request.id, extended=True
|
||||
),
|
||||
data=data,
|
||||
follow_redirects=True,
|
||||
)
|
||||
|
||||
response = client.get(
|
||||
url_for("requests.financial_verification", request_id=request.id)
|
||||
)
|
||||
|
||||
assert response.status_code == 200
|
||||
|
||||
|
||||
def test_task_order_number_persists_in_form(fv_data, e_fv_data):
|
||||
user = UserFactory.create()
|
||||
request = RequestFactory.create(creator=user)
|
||||
|
Loading…
x
Reference in New Issue
Block a user