* CLDC-3499: Update selenium
allows for the tests to run locally as it can download a browser version that exists
* CLDC-3499: Fix validations spec to be non year specific
* CLDC-3499: Remove unneeded 2020 dates from bulk scheme locations spec
* CLDC-3499: Remove year specific tests from form_handler_spec
* CLDC-3499: Remove 2020 test from lettings_log_spec
* CLDC-3499: Remove 2020 test from sales_log_spec
* CLDC-3499: Remove 2020 test from location_spec
makes the current_collection_after_crossover_start_date method a bit more useful, returns the date in the current collection year that crossover will end, rather than the crossover end date of the current period (which will be next year)
* CLDC-3499: Remove 2020 test from scheme_spec
* CLDC-3499: Remove 2020 test from setup_validations_spec
adds missing archived method to collection_time_helper
* CLDC-3499: Start changes to lettings log export service
* CLDC-3499: Remove unneeded old test from check answers summary list component spec
* CLDC-3499: Update check answers page spec for modern years
* CLDC-3499: Add more form helpers
* CLDC-3499: Remove year specific tests from lettings setup validations
* CLDC-3499: Remove year specific tests from managing org rake spec
* CLDC-3499: Update lettings log spec
* CLDC-3499: Update task list spec
* CLDC-3499: Update sales logs controller
* CLDC-3499: Remove old tests from sales log spec
* CLDC-3499: Fix some final old tests
* Revert "CLDC-3499: Start changes to lettings log export service"
This reverts commit 1edbc9ab8c.
* CLDC-3499: Lint
* CLDC-3676: date validations
* CLDC-3676: sales financial validations
* CLDC-3676: sales household validations
* CLDC-3676: lettings household validations
* CLDC-3676: sales property validations
* CLDC-3676: lettings property validations
* CLDC-3676: lettings sale validations
* CLDC-3676: lettings tenancy validations
* CLDC-3676: sales soft validations year edits
* CLDC-3676: sales discounted sale soft validation
* CLDC-3676: sales extra borrowing soft validation
* CLDC-3676: sales deposit value soft validation
* CLDC-3676: update other specs
* CLDC-3676: update net income value check spec
* CLDC-3676: lint
* CLDC-3676: remove old bulk upload specs
* CLDC-3676: add 2024 soft validation behaviour back
* feat: improve validate_person_age_matches_economic_status test case coverage
* feat: enforce crossover tests pass
* feat: re-include archived log display test
---------
Co-authored-by: Nat Dean-Lewis <nat.dean-lewis@softwire.com>
Co-authored-by: Nat Dean-Lewis <94526761+natdeanlewissoftwire@users.noreply.github.com>
* Ask address and UPRN questions for 2026 and later logs
* Fix page tests
* Fix LA and postcode overrides
* Fix resetting address fields and LA
* Add tests for resetting address fields and LA
* Fix lettings log derived fields tests
* Fix lint
* Fix tests
* Clean up lettings log property overrides
* Add comments
* Fix lint
* Add error to location field
* Add error to location field
* Add tests for error on location field
* Refactor property and location postcode matching validation into own function
* Add test for LA override
* Add test for postcode override
* Added `!record.read_attribute(:la)` guard
* Fix lint
* Fix property validation for checking LA is active/in England
* Fix test
* Minor tweaks
* Fix lint
* CLDC-4133: Use linked la if available for supported housing logs
calling record.la will automatically map old ECodes to newer ones, so no need to check the location directly
without this locations still tied to old ecodes could not be assigned logs, despite being valid
* CLDC-4133: Add verifying test
* CLDC-4090: Add validation that the LA is still active for the date of the log
* CLDC-4090: Add verifying tests
* CLDC-4090: Ensure startdate is not nil for this validation
* CLDC-4090: Document linked validations
* CLDC-4090: Remove errors on uprn_confirmation question
this question is no longer asked, so there are no errors needed for it
left the existing translations
* CLDC-4090: Update tests
* Rename old renewal prp page and question
* Update subsection
* Add referral_type to lettings logs
* Add two-step source of referral for letting questions
* Update test
* Update validations
* Update tests with referral_type
* Fix test
* Update test
* Update referral type
* Update factory bot
* Remove hint text
* Change check answer label
* Update incorrect value
* Rename old referral pages and questions
* Update referral type options
* Remove clearing
* Update id name
* Update row parser for referral type
* Update test
* Add LA in England validation for 2025
* Validate supported housing logs
* Add error message to the date
* Update error messages
* lint
* Fix error messages for date
* Update no address found soft validation
* Update validation messages
* rename variables in test file
* write tests for new validations
* validate that answers to numeric questions are given to the correct level of accuracy and in normal format with only digits
* add error messages for new validations
* add or alter step on numeric questions in sales, amend one test given step changes
* copy change
* remove validation that is specific to number format and fold that functionality into accuracy validation, rejig tests accordingly
* fix various tests
* remove reference to currency in validation message that concerns step only and doesn't check whether firled is currency related
* alter copy to avoid redundant repetition in validaiton message
* save changes made in rebase
* changes after PO review
two step values had been missed in previous work
in various places there were custom validations applied that duplicated the functionality of the generic min max validation that is applied to all numeric questions, in these situations sometimes the min and max on the question class was inconsistent with the limit that triggered validations
these have been corrected and made consistent
various tests were affected by this and have been amended accordingly
* remove tests introduced by mistake in rebase
* amend step value on earnings
* rename variables in test file
* write tests for new validations
* validate that answers to numeric questions are given to the correct level of accuracy and in normal format with only digits
* add error messages for new validations
* add or alter step on numeric questions in sales, amend one test given step changes
* copy change
* remove validation that is specific to number format and fold that functionality into accuracy validation, rejig tests accordingly
* fix various tests
* remove reference to currency in validation message that concerns step only and doesn't check whether firled is currency related
* alter copy to avoid redundant repetition in validaiton message
* save changes made in rebase
* changes after PO review
two step values had been missed in previous work
in various places there were custom validations applied that duplicated the functionality of the generic min max validation that is applied to all numeric questions, in these situations sometimes the min and max on the question class was inconsistent with the limit that triggered validations
these have been corrected and made consistent
various tests were affected by this and have been amended accordingly
* remove tests introduced by mistake in rebase
* clear age2 if it's out of range
* Clear beds if over max
* Clear charges if there are carehome charges given
* Clear charges if scharge is under 0
* Clear tshortfall if it is not positive
* Clear referral if it's an invalid temporary accommodation
* Clear charges if pscharge is outside the range
* Clear charges if supcharg is outside the range
* Refactor clearing charges
* Clear charges is scharge is outside the range
* Clear location and scheme if location is inactive during the tenancy start date
* Remove care home charge if it's outside the range
* Refactor validation error information infor a hash
* Clear age out of range for all people
* Remove unused constant
* Update import logging messages
* Extract earnings validation and remove to_set from hash
* Remove to_delete
* Update logging
* Update bulk upload errors
* Clear import fields failing non_temp_accommodation validation
* Clear joint tenancy if there is only 1 person in the household
* Clear offered if the value is above the maximum of 20
* Display error message on ecstat
* Remove ecstat if the income is too high for it
* Add postcode fields
* Add postcode page and questions
* Add postcode page to the property information subsection
* Only display local authority question if the la is not inferred
* Fix migration
* Move postcode validation
* Infer LA fields from postcode
* infer partial postcodes
* feat: add renewal validation on rsnvac
* test: check sensible error seen when rsnvac is renewal and but letting is not a renewal
* test: change renewal validation check to fetch error message dynamically
* feat: lint code
* feat: write record.renewal.present?, not record.renewal
Co-authored-by: James Rose <james@jbpr.net>
Co-authored-by: James Rose <james@jbpr.net>
* feat: add 2022 rent range data, update rake task for population of this
* feat: change file format so ranges_rent_id is recognised
* feat: add updated error messages and casing
* tests: make tests pass
* feat: ensure there is a location_code in all locations and use this (and beds = 0) for supported housing rent validations
* feat: fix general needs validation behaviour
* feat: add local authorities enum to location.rb
* feat: ensure case when beds > 4 is accounted for
* feat: add error messages on property postcode page as well as la page
* feat: add error messages on scheme_id and location_id as well as la page
* feat: add error messages on scheme_id and location_id as well as la page
* feat: null coalescing and validations on changing las to one that invalidates rent in supported housing
* feat: nil protection
* refactor: linting
* refactor: combining duplicated logic
* tests: add hard validation tests split by needstype
* feat: update validations when beds > 4
* feat: update validations when beds > 4
* refactor: simplification, use preivous la method
* refactor: response to PR comments, fixing beds.negative validation
* feat: remove dynamic local auth name text from interruption screens - to be added back in later if this becomes a priority, would need some work on adding local auth name to log for supported housing logs not just leaving it in the location
* location cell ref
* extracted regex into initializer
* extracted regex into initializer - part 2
* added PostcodeService to extract behavior
* rubo
* better test name
* moved .delete.upcase to the PostcodeService class
* 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
* 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
* Add a non temp accommocation validation for vacancy reason
* Only show errors relevant to the page questions
* Add referral question/field
* Add validation for referrals and vacancy reasons
* change error message content
Add a validation test separated from the main case_log_spec
Create a new validator for the "Local Authority" section
Changes the postcode regexp to be case insensitive
* migration wip
* change field names to lowercase and fix the tests
* Change national and ethnic field types and map to correct enums
* change ecstat column types
* Change prevten field type
* Change homeless field type
* Change benefit cap field type
* Put db enums in one folder and add a few new field changes"
* change field type for housing needs
* Change illness field type
* display checkbox answers
* cbl, chr, cap
* Change tenancy and tenancylength field types
* Change landlord and rsnvac field types
* Change unittype_gn field type
* Reasonble preference displaying on check answers
* update more field types
* Fix typo in comumn name
* Change more types
* Test fixes
* Add adr
* fix some tests
* run migration
* Fix tests
Co-authored-by: Matthew Phelan <matthew.phelan@madetech.com>