diff --git a/atst/forms/financial.py b/atst/forms/financial.py index 15ddb955..6bcabab7 100644 --- a/atst/forms/financial.py +++ b/atst/forms/financial.py @@ -32,19 +32,20 @@ def coerce_choice(val): class DraftValidateMixin(object): def validate_draft(self): - """ - Make all fields optional before validation, and then return them to - their previous state. - """ - for field in self: - field.validators.insert(0, Optional()) + return True + # """ + # Make all fields optional before validation, and then return them to + # their previous state. + # """ + # for field in self: + # field.validators.insert(0, Optional()) - valid = self.validate() + # valid = self.validate() - for field in self: - field.validators.pop(0) + # for field in self: + # field.validators.pop(0) - return valid + # return valid class TaskOrderForm(ValidatedForm, DraftValidateMixin): diff --git a/atst/routes/requests/financial_verification.py b/atst/routes/requests/financial_verification.py index cb2e1bb5..b1ed930c 100644 --- a/atst/routes/requests/financial_verification.py +++ b/atst/routes/requests/financial_verification.py @@ -168,29 +168,16 @@ class SaveFinancialVerificationDraft(FinancialVerificationBase): def execute(self): form = self._get_form(self.request, self.is_extended, self.fv_data) - valid = True - if not form.validate_draft(): self._raise(form) - 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( - form.task_order.number - ): - valid = False - attachment = self._process_attachment(self.is_extended, form) task_order = self._try_create_task_order(form, attachment, self.is_extended) updated_request = Requests.update_financial_verification( self.request.id, form.request.data, task_order=task_order ) - if valid: - return updated_request - else: - self._raise(form) + return updated_request @requests_bp.route("/requests/verify/", methods=["GET"]) diff --git a/tests/routes/test_financial_verification.py b/tests/routes/test_financial_verification.py index 8c1f3da4..94274551 100644 --- a/tests/routes/test_financial_verification.py +++ b/tests/routes/test_financial_verification.py @@ -193,39 +193,18 @@ def test_save_draft_with_ba_code(): assert save_draft.execute() -def test_save_draft_with_invalid_task_order(fv_data): +def test_save_draft_allows_invalid_data(): request = RequestFactory.create() user = UserFactory.create() - save_draft = SaveFinancialVerificationDraft( - TrueValidator, FalseValidator, user, request, fv_data, is_extended=False - ) + data = { + "task_order-number": MANUAL_TO_NUMBER, + "request-pe_id": "123", + "request-ba_code": "a" + } - with pytest.raises(FormValidationError): - assert save_draft.execute() - - -def test_save_draft_with_invalid_pe_number(fv_data): - request = RequestFactory.create() - user = UserFactory.create() - save_draft = SaveFinancialVerificationDraft( - FalseValidator, TrueValidator, user, request, fv_data, is_extended=False - ) - - with pytest.raises(FormValidationError): - assert save_draft.execute() - - -def test_save_draft_re_enter_pe_number(fv_data): - request = RequestFactory.create() - user = UserFactory.create() - data = {**fv_data, "pe_id": "0101228M"} - save_fv = SaveFinancialVerificationDraft( - PENumberValidator(), TrueValidator, user, request, data, is_extended=False - ) - - with pytest.raises(FormValidationError): - save_fv.execute() - save_fv.execute() + assert SaveFinancialVerificationDraft( + PENumberValidator(), TaskOrderNumberValidator(), user, request, data, is_extended=True + ).execute() def test_save_draft_and_then_submit():