From c26f8b92e9188fe86ac482b4949bc80d257c0291 Mon Sep 17 00:00:00 2001 From: graham-dds Date: Wed, 11 Sep 2019 14:50:29 -0400 Subject: [PATCH] Add tests to validate CLIN funding --- tests/forms/test_task_order.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/tests/forms/test_task_order.py b/tests/forms/test_task_order.py index 506312fe..9fb12bcf 100644 --- a/tests/forms/test_task_order.py +++ b/tests/forms/test_task_order.py @@ -72,3 +72,34 @@ def test_clin_form_pop_dates_within_contract_dates(): ) valid_clin_form = CLINForm(obj=valid_clin) assert valid_clin_form.validate() + + +def test_clin_form_obligated_greater_than_total(): + invalid_clin = factories.CLINFactory.create( + total_amount=0, + obligated_amount=1, + start_date=datetime.date(2019, 9, 15), + end_date=datetime.date(2020, 9, 14), + ) + invalid_clin_form = CLINForm(obj=invalid_clin) + assert not invalid_clin_form.validate() + assert ( + translate("forms.task_order.clin_funding_errors.obligated_amount_error") + ) in invalid_clin_form.obligated_amount.errors + + +def test_clin_form_dollar_amounts_out_of_range(): + invalid_clin = factories.CLINFactory.create( + total_amount=-1, + obligated_amount=1000000001, + start_date=datetime.date(2019, 9, 15), + end_date=datetime.date(2020, 9, 14), + ) + invalid_clin_form = CLINForm(obj=invalid_clin) + assert not invalid_clin_form.validate() + assert ( + translate("forms.task_order.clin_funding_errors.funding_range_error") + ) in invalid_clin_form.total_amount.errors + assert ( + translate("forms.task_order.clin_funding_errors.funding_range_error") + ) in invalid_clin_form.obligated_amount.errors