* Change net income known question
* earnings and frequency on same page
* check answers changes and other fixes
* some fixes
* delete unnecessary test
* fix failing spec
* Refactor answer label
Co-authored-by: baarkerlounger <baarkerlounger@users.noreply.github.com>
* test and lint fixes
* Method args
* Fix specs
* Rubocop
* Incfreq doesn't have it's own check answers display
* Add suffix to actual form
* JSON linting
* Conditional suffix only applies to check answers
* Validate that earnings and incfreq must be provided together
* Rubocop
* Fix spec
* Fix page view specs
* form fixes
* update error messages
Co-authored-by: baarkerlounger <baarkerlounger@users.noreply.github.com>
Co-authored-by: baarkerlounger <db@slothlife.xyz>
* add button for moving to next incomplete section
* Add extra logic for cycling sections
* fix all failures
* add test for in progress case log to declaration redirection
* fix bug with infinite recursion
* update button text to save and return to log
* use govuk_link helpers
* lint fixes
* some basic extract method refactors
* refactor tests
* lint fixes
* redirect to check answers if next subsection in progress
* fix failing spec
* make changes for 2021-2022 form
* add more changes to 2021-2022 form
* execute migration
* more form changes
* Add rent period question and check multiple condition sets for depends_on
cherry picked from CLDC-632-income-and-benefits-section branch
* update form json
* form and enum changes
* create new constants for enums
* Update config/forms/2021_2022.json
Co-authored-by: Paul Robert Lloyd <paulrobertlloyd@users.noreply.github.com>
* form alphabetising and lint fixes
* add divider
* Update app/models/constants/case_log.rb
Co-authored-by: Paul Robert Lloyd <paulrobertlloyd@users.noreply.github.com>
* Update config/forms/2021_2022.json
Co-authored-by: Paul Robert Lloyd <paulrobertlloyd@users.noreply.github.com>
Co-authored-by: Kat <katrina@madetech.com>
Co-authored-by: Paul Robert Lloyd <paulrobertlloyd@users.noreply.github.com>
* Update hb question options
* add has benefits field
* derive has_benefits
* update benefit question options
* Add nocharge field
* Add rent period question and check multiple condition sets for depends_on
* update rent period answer options
* Add carehome questions and move the remaining rent questions to income and benefits section
* Reset incfreq and incref and update rent routing based on periods
* Add custom guidance partials
* Add a test for the partial being rendered
* Add some unit tests for this
* Rubocop
* Don't introduce heisenspecs
* Use component
* Add comment
* Update check values
* Make net_income_known enum
* Iterate over all forms
* Re-lookup page to ensure we have the definition for the right form
* Match form naming convention for spec and real
* Add test for case log form
* Add basic info read page
* Header
* Better org seed
* Use gem component
* Tabs
* Users
* Users is a table rather than a summary list
* Table rows
* User is trackable
* Date format
* View component init
* Add pages and routes to render
* Partials
* Match the prototype design
* Nested layout is nicer
* Except of course they're not the same width
* Add button with wrong link
* Add user routes
* Don't move account route for now
* Add component test
* Rubocop
* Request spec
* Test views
* Add a feature spec for tab switching
* Move styling methods into helper
* PR suggestions
* PR comments
* Add organisation model and user association
* Add user admin panel
* email
* Update seeds
* Update spec
* Case logs belong to organisations
* Org case log association
* Add user case log association
* User case log helper methods
* Org case log relation helpers
* Case log index page only shows your organisations case logs
* No access to tasklist page for logs that aren't associated with your org
* No access to form pages for case logs that aren't owned or managed by your org
* Check answers access
* Submit form access
* Refactor out not found methods
* Allow user admin update without password
* Update feature specs
* Rubocop
* Update case log specs
* Test admin user update without password
* Spec grammar
* Refactor feature specs into smaller units
* DRY spec helpers
* Bump Turbo
* Use database ID assignment everywhere we need ID to reduce flakiness
* Update gemfile.lock
* Email is unique
* Selenium deprecation
* Don't need let bang
* Remove the uneeded extra options
* Remove flaky test mitigations that didn't work
* Use lockstep to remove test flakiness
* Dry up condition evaluation
* Spec admin user edit form
* Test income refused derivation
* Set valid incref
* Test Case Log deletion failures
* Test other household member age validations
* Test all reasonable preference validation paths
* Spec case logs admin table
* Spec admin user admin index
* Dashboard controller panel specs
* Spec panel contents
* Add create specs
* Don't assign non db ids if we don't need them
* Fix specs for new section
* Fix up fields
Devise is a commonly used gem for user authentication and management. Using
rails generators and Devise allows us to get a lot of boilerplate code for
user authentication and management and means we don't have to revinvent the
wheel. Styling will need to be done for the necessary pages and there are
likely to be bits of generated code that can be deleted. This will act as
a starting point to be built up from using TDD.
* Remove condition_effects_prefer_not_to_say field
* Change reason type
* Remove prefer not to say from illness
* add majorrepairs,propcode and infer postcode
* Update previous location and la
* Update majorrepairs, national and reasonpref
* Update housing benefits fields
* rename file
* Add previous postcode
* Move inferred postcode to model
* refactor infered poscode method
* Remove unneeded import
* update miration and some mappings
* Remove duplicate migration command
Devise is a commonly used gem for user authentication and management. Using
rails generators and Devise allows us to get a lot of boilerplate code for
user authentication and management and means we don't have to revinvent the
wheel. Styling will need to be done for the necessary pages and there are
likely to be bits of generated code that can be deleted. This will act as
a starting point to be built up from using TDD.
* Working except for selenium checkbox issues
* Remove old debug message
* Make sure we only run the stimulus init once per page load
* Revert that
* Rubocop
* Use data targets rather than id lookup, so that coupling is explicit
* Use fetch
* Schema update
* No schema changes introduced here
* Add a request spec for the new controller
* Schema order did change
* map over forEach
* Update factory fields
* Int for booleans :(
* Fix spec fields
* Lazy create
* 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>
* Add checked answers values as true if they are passed back as case log params from the form
* Allow changing/unticking saved checkbox values
* rubocop
* Save keys for checkboxes instead of labels
* Add conditional effects keys and table fields
* Add reasonable preference reason keys and table fields
* Redo the migrations
* Move method call around
* Update case_log params before checking them with page_params
* Reload case log rather than multiple lookups
* Refactor checkbox question selection
* Refactor out the need to get list of checkbox questions
* Spec merging of answers across different question types
* Update readme to include checkbox question data model assumptions
* Fix postcode duplication
Co-authored-by: baarkerlounger <db@slothlife.xyz>