* replace range validation with multiple to account for single-ended ranges
* add test for question with min but no max
* add min and max to household count question and remove bespoke validation. Remove code allowing max and no min given this situation does not seem to exist int eh form
* amend minor typo, add back a soft validation that had mysteriously gone missing
Previous to this change, the `reservist` field mapped `0` to yes and `1` to no. This change adjusts the mapping from `1` to yes, `2` to no, and `3` to prefer not to say.
* Add previous, current and next forms to form handler
* Add current, previous and next sales forms to form handler
* Implement current_lettings_form, current_sales_form and store year and form type in form
* refactor lettings_forms
* Use current, previous and next forms in lettings log model
* Use current, previous and next forms in sales log model
* use current, previous and next forms in csv service
* Remove "startyear_endyear" forms from form handler
* Remove name from form initializer and add an optional start year
* refactor get_form
* update csv test, fix form initialize
* rebase fix
* Refactor form_name_from_start_year method out
* remove unused variable
* fix typo, add date tests
* rebase, fix tests
* add comment to before test block
* Change the FormHandler back to only contain the form objects
* extract name
This renames the case_log to lettings_log as everything we've written so
far has been geared towards lettings of social housing so it makes sense to
have the name describe this. This is also a precursor to adding in stuff for
sales logs (whatever shape that takes)
Co-authored-by: James Rose <james@jbpr.net>
* wip
* add missing values to factory bot and lint
* remove irrelevand methods
* dont infer housingneeds
* typo
* update method name
* Remove housingneeds_present? method
* move set housing needs fields to case log variables file
* Only set all housing needs values to 1 if there are no housingneeds
* update json form fixture
* link
* update csv test
Co-authored-by: Dushan Despotovic <dushan@madetech.com>
* update hard validation limits for pregnancy age, remove hard validation if there are no females at all
* Add soft validations for pregnancy
* make the error message consistent
* Only check the values for the members with details known in the household
* Show interruption screen when resident details are updated
* Route back to check answers after an interruption screen and back to previous page if no is selected on the interruption screen
Co-authored-by: baarkerlounger <baarkerlounger@users.noreply.github.com>
* update validation messages
* fix a test
* fix a typo
Co-authored-by: baarkerlounger <baarkerlounger@users.noreply.github.com>
* change get_question form method to prioritise the routed to questions
* Add soft validation and interruption screen for basic rent
* get previous page that was routed to and display the same error for both soft validations
* Separate max and min error screens
* add a test for getting the previous page
* Update content and add more tests for previous page
* Remove enums
* Add some convenience methods to make validations more readable
* Gender chars instead of ints
* Remove incorrect API doc info for now
* More convenience methods
* Rename label from value method
* Wrapper hbrentshortfall
* Please the cop
* household needs section change
* update enums
* fix specs
* spec fixes
* content updates to form
* fix failing spec
* remove hint text
* Update config/forms/2021_2022.json
Co-authored-by: Paul Robert Lloyd <paulrobertlloyd@users.noreply.github.com>
Co-authored-by: Paul Robert Lloyd <paulrobertlloyd@users.noreply.github.com>
* Validate internal referrals and secure tenancy
* Fix referral validations and move referral validation from local_authority to household
* Move validation
* Add more error messages
* lint
* fix typo in test
* Check that the methods get called
* Fix lint
* Refactor other household member validation specs
* Remove dupes
* Tenancy type validation
* LA validations
* Benefits proportion validations
* Outstanding rent and shortfall validations
* Typo
* Net income hard validations
* First let vacancy reason validations
* Unit tests
* Age validations
* Add todo
* Check all new records have correct validator
* Reasonable preference
* Pregnancy validations
* Spec
* Fix spec