diff --git a/.ruby-version b/.ruby-version index 0aec50e6e..9cec7165a 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.1.4 +3.1.6 diff --git a/Dockerfile b/Dockerfile index 5150b5b89..281fd6ca2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ruby:3.1.4-alpine3.18 as base +FROM ruby:3.1.6-alpine3.20 as base WORKDIR /app @@ -10,7 +10,7 @@ RUN apk add --update --no-cache tzdata && \ # build-base: compilation tools for bundle # yarn: node package manager # postgresql-dev: postgres driver and libraries -RUN apk add --no-cache build-base=0.5-r3 busybox=1.36.1-r7 nodejs-current=20.8.1-r0 yarn=1.22.19-r0 postgresql13-dev=13.18-r0 bash=5.2.15-r5 +RUN apk add --no-cache build-base=0.5-r3 busybox=1.36.1-r29 nodejs=20.15.1-r0 yarn=1.22.22-r0 bash=5.2.26-r0 libpq-dev # Bundler version should be the same version as what the Gemfile.lock was bundled with RUN gem install bundler:2.6.4 --no-document diff --git a/Gemfile b/Gemfile index 033706b39..ad13e4959 100644 --- a/Gemfile +++ b/Gemfile @@ -3,7 +3,7 @@ source "https://rubygems.org" git_source(:github) { |repo| "https://github.com/#{repo}.git" } -ruby "3.1.4" +ruby "3.1.6" # Bundle edge Rails instead: gem 'rails', github: 'rails/rails', branch: 'main' gem "rails", "~> 7.2.2" diff --git a/Gemfile.lock b/Gemfile.lock index e1a34c6ed..2ac846554 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -606,7 +606,7 @@ DEPENDENCIES webmock RUBY VERSION - ruby 3.1.4p223 + ruby 3.1.6p260 BUNDLED WITH 2.6.4 diff --git a/app/helpers/bulk_upload/sales_log_to_csv.rb b/app/helpers/bulk_upload/sales_log_to_csv.rb index 0d37fe344..bc1435186 100644 --- a/app/helpers/bulk_upload/sales_log_to_csv.rb +++ b/app/helpers/bulk_upload/sales_log_to_csv.rb @@ -18,11 +18,9 @@ class BulkUpload::SalesLogToCsv year = log.collection_start_year case year when 2022 - to_2022_csv_row(seed:) - when 2023 - to_2023_csv_row(seed:) - when 2024 - to_2024_csv_row(seed:) + to_2022_csv_row + when 2023, 2024 + to_year_csv_row(year, seed:) else raise NotImplementedError "No mapping function implemented for year #{year}" end @@ -30,93 +28,55 @@ class BulkUpload::SalesLogToCsv def to_row year = log.collection_start_year - case year - when 2022 - to_2022_row - when 2023 - to_2023_row - when 2024 - to_2024_row - else - raise NotImplementedError "No mapping function implemented for year #{year}" - end + send("to_#{year}_row") + rescue NoMethodError + raise NotImplementedError "No mapping function implemented for year #{year}" end def default_field_numbers_row(seed: nil) year = log.collection_start_year - case year - when 2022 - default_2022_field_numbers_row(seed:) - when 2023 - default_2023_field_numbers_row(seed:) - when 2024 - default_2024_field_numbers_row(seed:) - else - raise NotImplementedError "No mapping function implemented for year #{year}" - end + default_field_numbers_row_for_year(year, seed:) end def default_field_numbers year = log.collection_start_year - case year - when 2022 - default_2022_field_numbers - when 2023 - default_2023_field_numbers - when 2024 - default_2024_field_numbers - else - raise NotImplementedError "No mapping function implemented for year #{year}" - end + default_field_numbers_for_year(year) end def to_2022_csv_row (row_prefix + to_2022_row).flatten.join(",") + line_ending end - def to_2023_csv_row(seed: nil) + def to_year_csv_row(year, seed: nil) + unshuffled_row = send("to_#{year}_row") if seed - row = to_2023_row.shuffle(random: Random.new(seed)) + row = unshuffled_row.shuffle(random: Random.new(seed)) (row_prefix + row).flatten.join(",") + line_ending else - (row_prefix + to_2023_row).flatten.join(",") + line_ending + (row_prefix + unshuffled_row).flatten.join(",") + line_ending end + rescue NoMethodError + raise NotImplementedError "No mapping function implemented for year #{year}" end - def to_2024_csv_row(seed: nil) - if seed - row = to_2024_row.shuffle(random: Random.new(seed)) - (row_prefix + row).flatten.join(",") + line_ending + def default_field_numbers_for_year(year) + case year + when 2022 + (1..125).to_a + when 2023 + [6, 3, 4, 5, nil, 28, 30, 38, 47, 51, 55, 59, 31, 39, 48, 52, 56, 60, 37, 46, 50, 54, 58, 35, 43, 49, 53, 57, 61, 32, 33, 78, 80, 79, 81, 83, 84, nil, 62, 66, 64, 65, 63, 67, 69, 70, 68, 76, 77, 16, 17, 18, 26, 24, 25, 27, 8, 91, 95, 96, 97, 92, 93, 94, 98, 100, 101, 103, 104, 106, 110, 111, 112, 113, 114, 9, 116, 117, 118, 120, 124, 125, 126, 10, 11, nil, 127, 129, 133, 134, 135, 1, 2, nil, 73, nil, 75, 107, 108, 121, 122, 130, 131, 82, 109, 123, 132, 115, 15, 86, 87, 29, 7, 12, 13, 14, 36, 44, 45, 88, 89, 102, 105, 119, 128, 19, 20, 21, 22, 23, 34, 40, 41, 42, 71, 72, 74, 85, 90, 99] + when 2024 + (1..131).to_a else - (row_prefix + to_2024_row).flatten.join(",") + line_ending + raise NotImplementedError "No mapping function implemented for year #{year}" end end - def default_2022_field_numbers - (1..125).to_a - end - - def default_2022_field_numbers_row(seed: nil) + def default_field_numbers_row_for_year(year, seed: nil) if seed - ["Field number"] + default_2022_field_numbers.shuffle(random: Random.new(seed)) + ["Field number"] + default_field_numbers_for_year(year).shuffle(random: Random.new(seed)) else - ["Field number"] + default_2022_field_numbers - end.flatten.join(",") + line_ending - end - - def default_2023_field_numbers_row(seed: nil) - if seed - ["Field number"] + default_2023_field_numbers.shuffle(random: Random.new(seed)) - else - ["Field number"] + default_2023_field_numbers - end.flatten.join(",") + line_ending - end - - def default_2024_field_numbers_row(seed: nil) - if seed - ["Field number"] + default_2024_field_numbers.shuffle(random: Random.new(seed)) - else - ["Field number"] + default_2024_field_numbers + ["Field number"] + default_field_numbers_for_year(year) end.flatten.join(",") + line_ending end @@ -435,10 +395,6 @@ class BulkUpload::SalesLogToCsv ] end - def default_2023_field_numbers - [6, 3, 4, 5, nil, 28, 30, 38, 47, 51, 55, 59, 31, 39, 48, 52, 56, 60, 37, 46, 50, 54, 58, 35, 43, 49, 53, 57, 61, 32, 33, 78, 80, 79, 81, 83, 84, nil, 62, 66, 64, 65, 63, 67, 69, 70, 68, 76, 77, 16, 17, 18, 26, 24, 25, 27, 8, 91, 95, 96, 97, 92, 93, 94, 98, 100, 101, 103, 104, 106, 110, 111, 112, 113, 114, 9, 116, 117, 118, 120, 124, 125, 126, 10, 11, nil, 127, 129, 133, 134, 135, 1, 2, nil, 73, nil, 75, 107, 108, 121, 122, 130, 131, 82, 109, 123, 132, 115, 15, 86, 87, 29, 7, 12, 13, 14, 36, 44, 45, 88, 89, 102, 105, 119, 128, 19, 20, 21, 22, 23, 34, 40, 41, 42, 71, 72, 74, 85, 90, 99] - end - def custom_field_numbers_row(seed: nil, field_numbers: nil) if seed ["Field number"] + field_numbers.shuffle(random: Random.new(seed)) @@ -452,10 +408,6 @@ class BulkUpload::SalesLogToCsv (row_prefix + row).flatten.join(",") + line_ending end - def default_2024_field_numbers - (1..131).to_a - end - private def hhregres diff --git a/app/models/form/lettings/pages/address_fallback.rb b/app/models/form/lettings/pages/address_fallback.rb index 763f9d3da..fd580a3ed 100644 --- a/app/models/form/lettings/pages/address_fallback.rb +++ b/app/models/form/lettings/pages/address_fallback.rb @@ -24,5 +24,5 @@ class Form::Lettings::Pages::AddressFallback < ::Form::Page ] end - QUESTION_NUMBER_FROM_YEAR = { 2024 => 13, 2025 => 13 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2024 => 13, 2025 => 17 }.freeze end diff --git a/app/models/form/lettings/questions/address_line1.rb b/app/models/form/lettings/questions/address_line1.rb index 7da9720eb..4b1f67931 100644 --- a/app/models/form/lettings/questions/address_line1.rb +++ b/app/models/form/lettings/questions/address_line1.rb @@ -18,5 +18,5 @@ class Form::Lettings::Questions::AddressLine1 < ::Form::Question ].select(&:present?).join("\n") end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13, 2025 => 17 }.freeze end diff --git a/app/models/form/lettings/questions/brent_4_weekly.rb b/app/models/form/lettings/questions/brent_4_weekly.rb index 2dc18ba56..dab6b26da 100644 --- a/app/models/form/lettings/questions/brent_4_weekly.rb +++ b/app/models/form/lettings/questions/brent_4_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::Brent4Weekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94, 2025 => 92 }.freeze end diff --git a/app/models/form/lettings/questions/brent_bi_weekly.rb b/app/models/form/lettings/questions/brent_bi_weekly.rb index d8bcfa136..a7f97f93d 100644 --- a/app/models/form/lettings/questions/brent_bi_weekly.rb +++ b/app/models/form/lettings/questions/brent_bi_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::BrentBiWeekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94, 2025 => 92 }.freeze end diff --git a/app/models/form/lettings/questions/brent_monthly.rb b/app/models/form/lettings/questions/brent_monthly.rb index a96239d7a..f653b5177 100644 --- a/app/models/form/lettings/questions/brent_monthly.rb +++ b/app/models/form/lettings/questions/brent_monthly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::BrentMonthly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94, 2025 => 92 }.freeze end diff --git a/app/models/form/lettings/questions/brent_weekly.rb b/app/models/form/lettings/questions/brent_weekly.rb index 155addfec..4a120b603 100644 --- a/app/models/form/lettings/questions/brent_weekly.rb +++ b/app/models/form/lettings/questions/brent_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::BrentWeekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 95, 2024 => 94, 2025 => 92 }.freeze end diff --git a/app/models/form/lettings/questions/county.rb b/app/models/form/lettings/questions/county.rb index 27e17645e..12585fa8e 100644 --- a/app/models/form/lettings/questions/county.rb +++ b/app/models/form/lettings/questions/county.rb @@ -10,5 +10,5 @@ class Form::Lettings::Questions::County < ::Form::Question @hide_question_number_on_page = true end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13, 2025 => 17 }.freeze end diff --git a/app/models/form/lettings/questions/first_time_property_let_as_social_housing.rb b/app/models/form/lettings/questions/first_time_property_let_as_social_housing.rb index bc1c66cb4..0f737fa6e 100644 --- a/app/models/form/lettings/questions/first_time_property_let_as_social_housing.rb +++ b/app/models/form/lettings/questions/first_time_property_let_as_social_housing.rb @@ -22,5 +22,5 @@ class Form::Lettings::Questions::FirstTimePropertyLetAsSocialHousing < ::Form::Q form.start_year_2024_or_later? ? "This is a re-let of existing social housing stock." : "This is a re-let of existing social housing." end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 14, 2024 => 15 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 14, 2024 => 15, 2025 => 12 }.freeze end diff --git a/app/models/form/lettings/questions/hbrentshortfall.rb b/app/models/form/lettings/questions/hbrentshortfall.rb index a34df70e0..15f7744d9 100644 --- a/app/models/form/lettings/questions/hbrentshortfall.rb +++ b/app/models/form/lettings/questions/hbrentshortfall.rb @@ -14,5 +14,5 @@ class Form::Lettings::Questions::Hbrentshortfall < ::Form::Question "3" => { "value" => "Don’t know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 99, 2024 => 98 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 99, 2024 => 98, 2025 => 96 }.freeze end diff --git a/app/models/form/lettings/questions/joint.rb b/app/models/form/lettings/questions/joint.rb index e28a0085c..b80856495 100644 --- a/app/models/form/lettings/questions/joint.rb +++ b/app/models/form/lettings/questions/joint.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::Joint < ::Form::Question "3" => { "value" => "Don’t know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 25 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 25, 2024 => 25, 2025 => 26 }.freeze end diff --git a/app/models/form/lettings/questions/la.rb b/app/models/form/lettings/questions/la.rb index 5e1c8ae2b..c6d6f8240 100644 --- a/app/models/form/lettings/questions/la.rb +++ b/app/models/form/lettings/questions/la.rb @@ -13,5 +13,5 @@ class Form::Lettings::Questions::La < ::Form::Question { "" => "Select an option" }.merge(LocalAuthority.active(form.start_date).england.map { |la| [la.code, la.name] }.to_h) end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 13, 2024 => 14 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 13, 2024 => 14, 2025 => 18 }.freeze end diff --git a/app/models/form/lettings/questions/postcode_for_full_address.rb b/app/models/form/lettings/questions/postcode_for_full_address.rb index d6ee9859f..a4c775a55 100644 --- a/app/models/form/lettings/questions/postcode_for_full_address.rb +++ b/app/models/form/lettings/questions/postcode_for_full_address.rb @@ -22,5 +22,5 @@ class Form::Lettings::Questions::PostcodeForFullAddress < ::Form::Question @hide_question_number_on_page = true end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13, 2025 => 17 }.freeze end diff --git a/app/models/form/lettings/questions/previous_let_type.rb b/app/models/form/lettings/questions/previous_let_type.rb index 509e43503..8270d621c 100644 --- a/app/models/form/lettings/questions/previous_let_type.rb +++ b/app/models/form/lettings/questions/previous_let_type.rb @@ -42,7 +42,7 @@ class Form::Lettings::Questions::PreviousLetType < ::Form::Question "3" => { "value" => "Don’t know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 16, 2024 => 17 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 16, 2024 => 17, 2025 => 14 }.freeze def answer_options return ANSWER_OPTIONS_AFTER_2025 if form.start_year_2025_or_later? diff --git a/app/models/form/lettings/questions/pscharge_4_weekly.rb b/app/models/form/lettings/questions/pscharge_4_weekly.rb index 56d2e60b8..410f06ada 100644 --- a/app/models/form/lettings/questions/pscharge_4_weekly.rb +++ b/app/models/form/lettings/questions/pscharge_4_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::Pscharge4Weekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96, 2025 => 94 }.freeze end diff --git a/app/models/form/lettings/questions/pscharge_bi_weekly.rb b/app/models/form/lettings/questions/pscharge_bi_weekly.rb index 6022f6019..dcf557cda 100644 --- a/app/models/form/lettings/questions/pscharge_bi_weekly.rb +++ b/app/models/form/lettings/questions/pscharge_bi_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::PschargeBiWeekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96, 2025 => 94 }.freeze end diff --git a/app/models/form/lettings/questions/pscharge_monthly.rb b/app/models/form/lettings/questions/pscharge_monthly.rb index 225db53d3..ce92783d7 100644 --- a/app/models/form/lettings/questions/pscharge_monthly.rb +++ b/app/models/form/lettings/questions/pscharge_monthly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::PschargeMonthly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96, 2025 => 94 }.freeze end diff --git a/app/models/form/lettings/questions/pscharge_weekly.rb b/app/models/form/lettings/questions/pscharge_weekly.rb index 2ff06301c..5f0d90deb 100644 --- a/app/models/form/lettings/questions/pscharge_weekly.rb +++ b/app/models/form/lettings/questions/pscharge_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::PschargeWeekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 96, 2025 => 94 }.freeze end diff --git a/app/models/form/lettings/questions/rsnvac.rb b/app/models/form/lettings/questions/rsnvac.rb index 3f767d311..377641c94 100644 --- a/app/models/form/lettings/questions/rsnvac.rb +++ b/app/models/form/lettings/questions/rsnvac.rb @@ -99,5 +99,5 @@ class Form::Lettings::Questions::Rsnvac < ::Form::Question end end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 17, 2024 => 18 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 17, 2024 => 18, 2025 => 15 }.freeze end diff --git a/app/models/form/lettings/questions/rsnvac_first_let.rb b/app/models/form/lettings/questions/rsnvac_first_let.rb index 4b87d059f..27c43896d 100644 --- a/app/models/form/lettings/questions/rsnvac_first_let.rb +++ b/app/models/form/lettings/questions/rsnvac_first_let.rb @@ -14,5 +14,5 @@ class Form::Lettings::Questions::RsnvacFirstLet < ::Form::Question "15" => { "value" => "First let of new-build property" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16, 2025 => 13 }.freeze end diff --git a/app/models/form/lettings/questions/scharge_4_weekly.rb b/app/models/form/lettings/questions/scharge_4_weekly.rb index e91dadab3..8903cff00 100644 --- a/app/models/form/lettings/questions/scharge_4_weekly.rb +++ b/app/models/form/lettings/questions/scharge_4_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::Scharge4Weekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95, 2025 => 93 }.freeze end diff --git a/app/models/form/lettings/questions/scharge_bi_weekly.rb b/app/models/form/lettings/questions/scharge_bi_weekly.rb index 59138835d..ef0948bdf 100644 --- a/app/models/form/lettings/questions/scharge_bi_weekly.rb +++ b/app/models/form/lettings/questions/scharge_bi_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::SchargeBiWeekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95, 2025 => 93 }.freeze end diff --git a/app/models/form/lettings/questions/scharge_monthly.rb b/app/models/form/lettings/questions/scharge_monthly.rb index 33404a8ce..c26b106b0 100644 --- a/app/models/form/lettings/questions/scharge_monthly.rb +++ b/app/models/form/lettings/questions/scharge_monthly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::SchargeMonthly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95, 2025 => 93 }.freeze end diff --git a/app/models/form/lettings/questions/scharge_weekly.rb b/app/models/form/lettings/questions/scharge_weekly.rb index d8e16986e..e62dd577a 100644 --- a/app/models/form/lettings/questions/scharge_weekly.rb +++ b/app/models/form/lettings/questions/scharge_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::SchargeWeekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 95, 2025 => 93 }.freeze end diff --git a/app/models/form/lettings/questions/sheltered.rb b/app/models/form/lettings/questions/sheltered.rb index d1aa8454a..4c0ec4c07 100644 --- a/app/models/form/lettings/questions/sheltered.rb +++ b/app/models/form/lettings/questions/sheltered.rb @@ -28,5 +28,5 @@ class Form::Lettings::Questions::Sheltered < ::Form::Question end end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 29 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 29, 2024 => 29, 2025 => 25 }.freeze end diff --git a/app/models/form/lettings/questions/starter_tenancy_type.rb b/app/models/form/lettings/questions/starter_tenancy_type.rb index 03d3fee88..dfda74bc0 100644 --- a/app/models/form/lettings/questions/starter_tenancy_type.rb +++ b/app/models/form/lettings/questions/starter_tenancy_type.rb @@ -65,5 +65,5 @@ class Form::Lettings::Questions::StarterTenancyType < ::Form::Question end end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 27 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 27, 2024 => 27, 2025 => 28 }.freeze end diff --git a/app/models/form/lettings/questions/startertenancy.rb b/app/models/form/lettings/questions/startertenancy.rb index 44b592cd6..6bec6a360 100644 --- a/app/models/form/lettings/questions/startertenancy.rb +++ b/app/models/form/lettings/questions/startertenancy.rb @@ -10,5 +10,5 @@ class Form::Lettings::Questions::Startertenancy < ::Form::Question ANSWER_OPTIONS = { "1" => { "value" => "Yes" }, "2" => { "value" => "No" } }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 26 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 26, 2024 => 26, 2025 => 27 }.freeze end diff --git a/app/models/form/lettings/questions/supcharg_4_weekly.rb b/app/models/form/lettings/questions/supcharg_4_weekly.rb index cd3b7beed..c8139c2bf 100644 --- a/app/models/form/lettings/questions/supcharg_4_weekly.rb +++ b/app/models/form/lettings/questions/supcharg_4_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::Supcharg4Weekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97, 2025 => 95 }.freeze end diff --git a/app/models/form/lettings/questions/supcharg_bi_weekly.rb b/app/models/form/lettings/questions/supcharg_bi_weekly.rb index dba861ebe..1a73883dc 100644 --- a/app/models/form/lettings/questions/supcharg_bi_weekly.rb +++ b/app/models/form/lettings/questions/supcharg_bi_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::SupchargBiWeekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97, 2025 => 95 }.freeze end diff --git a/app/models/form/lettings/questions/supcharg_monthly.rb b/app/models/form/lettings/questions/supcharg_monthly.rb index 3b5b3e41c..481766de9 100644 --- a/app/models/form/lettings/questions/supcharg_monthly.rb +++ b/app/models/form/lettings/questions/supcharg_monthly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::SupchargMonthly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97, 2025 => 95 }.freeze end diff --git a/app/models/form/lettings/questions/supcharg_weekly.rb b/app/models/form/lettings/questions/supcharg_weekly.rb index f48a8ccfe..f85052001 100644 --- a/app/models/form/lettings/questions/supcharg_weekly.rb +++ b/app/models/form/lettings/questions/supcharg_weekly.rb @@ -15,5 +15,5 @@ class Form::Lettings::Questions::SupchargWeekly < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 98, 2024 => 97, 2025 => 95 }.freeze end diff --git a/app/models/form/lettings/questions/tenancy_length.rb b/app/models/form/lettings/questions/tenancy_length.rb index 1bf868377..a3155f8c0 100644 --- a/app/models/form/lettings/questions/tenancy_length.rb +++ b/app/models/form/lettings/questions/tenancy_length.rb @@ -12,5 +12,5 @@ class Form::Lettings::Questions::TenancyLength < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 28 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 28, 2025 => 29 }.freeze end diff --git a/app/models/form/lettings/questions/tenancy_length_affordable_rent.rb b/app/models/form/lettings/questions/tenancy_length_affordable_rent.rb index 8e79924aa..58b83fe90 100644 --- a/app/models/form/lettings/questions/tenancy_length_affordable_rent.rb +++ b/app/models/form/lettings/questions/tenancy_length_affordable_rent.rb @@ -12,5 +12,5 @@ class Form::Lettings::Questions::TenancyLengthAffordableRent < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 28 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 28, 2025 => 29 }.freeze end diff --git a/app/models/form/lettings/questions/tenancy_length_intermediate_rent.rb b/app/models/form/lettings/questions/tenancy_length_intermediate_rent.rb index 1bf3bd7cc..c85583d95 100644 --- a/app/models/form/lettings/questions/tenancy_length_intermediate_rent.rb +++ b/app/models/form/lettings/questions/tenancy_length_intermediate_rent.rb @@ -12,5 +12,5 @@ class Form::Lettings::Questions::TenancyLengthIntermediateRent < ::Form::Questio @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 28 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 28, 2025 => 29 }.freeze end diff --git a/app/models/form/lettings/questions/tenancy_length_periodic.rb b/app/models/form/lettings/questions/tenancy_length_periodic.rb index c65f41399..e7f9336ec 100644 --- a/app/models/form/lettings/questions/tenancy_length_periodic.rb +++ b/app/models/form/lettings/questions/tenancy_length_periodic.rb @@ -12,5 +12,5 @@ class Form::Lettings::Questions::TenancyLengthPeriodic < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 28 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 28, 2025 => 29 }.freeze end diff --git a/app/models/form/lettings/questions/tenancy_other.rb b/app/models/form/lettings/questions/tenancy_other.rb index 3fb3469ee..8a8a94108 100644 --- a/app/models/form/lettings/questions/tenancy_other.rb +++ b/app/models/form/lettings/questions/tenancy_other.rb @@ -8,5 +8,5 @@ class Form::Lettings::Questions::TenancyOther < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 27 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 27, 2024 => 27, 2025 => 28 }.freeze end diff --git a/app/models/form/lettings/questions/tenancy_type.rb b/app/models/form/lettings/questions/tenancy_type.rb index c67895bef..96fda2687 100644 --- a/app/models/form/lettings/questions/tenancy_type.rb +++ b/app/models/form/lettings/questions/tenancy_type.rb @@ -65,5 +65,5 @@ class Form::Lettings::Questions::TenancyType < ::Form::Question end end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 27 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 27, 2024 => 27, 2025 => 28 }.freeze end diff --git a/app/models/form/lettings/questions/town_or_city.rb b/app/models/form/lettings/questions/town_or_city.rb index 14ed19dfc..5673b7f01 100644 --- a/app/models/form/lettings/questions/town_or_city.rb +++ b/app/models/form/lettings/questions/town_or_city.rb @@ -10,5 +10,5 @@ class Form::Lettings::Questions::TownOrCity < ::Form::Question @hide_question_number_on_page = true end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 13, 2025 => 17 }.freeze end diff --git a/app/models/form/lettings/questions/tshortfall.rb b/app/models/form/lettings/questions/tshortfall.rb index 3219c7689..aa6c2edbc 100644 --- a/app/models/form/lettings/questions/tshortfall.rb +++ b/app/models/form/lettings/questions/tshortfall.rb @@ -24,5 +24,5 @@ class Form::Lettings::Questions::Tshortfall < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 100, 2024 => 99 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 100, 2024 => 99, 2025 => 97 }.freeze end diff --git a/app/models/form/lettings/questions/tshortfall_known.rb b/app/models/form/lettings/questions/tshortfall_known.rb index 7a5da7127..8ba0b038c 100644 --- a/app/models/form/lettings/questions/tshortfall_known.rb +++ b/app/models/form/lettings/questions/tshortfall_known.rb @@ -12,5 +12,5 @@ class Form::Lettings::Questions::TshortfallKnown < ::Form::Question ANSWER_OPTIONS = { "0" => { "value" => "Yes" }, "1" => { "value" => "No" } }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 100, 2024 => 99 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 100, 2024 => 99, 2025 => 97 }.freeze end diff --git a/app/models/form/lettings/questions/uprn.rb b/app/models/form/lettings/questions/uprn.rb index e6741d25b..7f1f240f9 100644 --- a/app/models/form/lettings/questions/uprn.rb +++ b/app/models/form/lettings/questions/uprn.rb @@ -35,5 +35,5 @@ class Form::Lettings::Questions::Uprn < ::Form::Question "\n\n#{value.join("\n")}" end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 11, 2024 => 12 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 11, 2024 => 12, 2025 => 16 }.freeze end diff --git a/app/models/form/lettings/questions/uprn_known.rb b/app/models/form/lettings/questions/uprn_known.rb index 29d415134..6ac70e415 100644 --- a/app/models/form/lettings/questions/uprn_known.rb +++ b/app/models/form/lettings/questions/uprn_known.rb @@ -30,5 +30,5 @@ class Form::Lettings::Questions::UprnKnown < ::Form::Question I18n.t("validations.property.uprn_known.invalid") end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 11, 2024 => 12 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 11, 2024 => 12, 2025 => 16 }.freeze end diff --git a/app/models/form/sales/pages/address.rb b/app/models/form/sales/pages/address.rb index be0ed9eae..933dc4b3b 100644 --- a/app/models/form/sales/pages/address.rb +++ b/app/models/form/sales/pages/address.rb @@ -20,5 +20,5 @@ class Form::Sales::Pages::Address < ::Form::Page ] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16, 2025 => 14 }.freeze end diff --git a/app/models/form/sales/questions/address_line1.rb b/app/models/form/sales/questions/address_line1.rb index f7a4c7c2d..2836fcc00 100644 --- a/app/models/form/sales/questions/address_line1.rb +++ b/app/models/form/sales/questions/address_line1.rb @@ -18,5 +18,5 @@ class Form::Sales::Questions::AddressLine1 < ::Form::Question ].select(&:present?).join("\n") end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16, 2025 => 14 }.freeze end diff --git a/app/models/form/sales/questions/age1.rb b/app/models/form/sales/questions/age1.rb index 4722d0208..3d03334a8 100644 --- a/app/models/form/sales/questions/age1.rb +++ b/app/models/form/sales/questions/age1.rb @@ -22,5 +22,5 @@ class Form::Sales::Questions::Age1 < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 20, 2024 => 22 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 20, 2024 => 22, 2025 => 20 }.freeze end diff --git a/app/models/form/sales/questions/age2.rb b/app/models/form/sales/questions/age2.rb index 29d955291..ffc861398 100644 --- a/app/models/form/sales/questions/age2.rb +++ b/app/models/form/sales/questions/age2.rb @@ -16,5 +16,5 @@ class Form::Sales::Questions::Age2 < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 30 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 30, 2025 => 28 }.freeze end diff --git a/app/models/form/sales/questions/armed_forces.rb b/app/models/form/sales/questions/armed_forces.rb index 7bd14d7b1..7eeec09e5 100644 --- a/app/models/form/sales/questions/armed_forces.rb +++ b/app/models/form/sales/questions/armed_forces.rb @@ -14,5 +14,5 @@ class Form::Sales::Questions::ArmedForces < ::Form::Question "8" => { "value" => "Don't know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 62, 2024 => 64 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 62, 2024 => 64, 2025 => 61 }.freeze end diff --git a/app/models/form/sales/questions/armed_forces_spouse.rb b/app/models/form/sales/questions/armed_forces_spouse.rb index 02be7c5e3..a83ef93db 100644 --- a/app/models/form/sales/questions/armed_forces_spouse.rb +++ b/app/models/form/sales/questions/armed_forces_spouse.rb @@ -14,5 +14,5 @@ class Form::Sales::Questions::ArmedForcesSpouse < ::Form::Question "7" => { "value" => "Don't know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 64, 2024 => 66 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 64, 2024 => 66, 2025 => 63 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_age_known.rb b/app/models/form/sales/questions/buyer1_age_known.rb index 9f6da83ad..19442bdaa 100644 --- a/app/models/form/sales/questions/buyer1_age_known.rb +++ b/app/models/form/sales/questions/buyer1_age_known.rb @@ -31,5 +31,5 @@ class Form::Sales::Questions::Buyer1AgeKnown < ::Form::Question "2" => { "value" => "Buyer prefers not to say" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 20, 2024 => 22 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 20, 2024 => 22, 2025 => 20 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_ethnic_background_arab.rb b/app/models/form/sales/questions/buyer1_ethnic_background_arab.rb index 12a4bd842..c302f573f 100644 --- a/app/models/form/sales/questions/buyer1_ethnic_background_arab.rb +++ b/app/models/form/sales/questions/buyer1_ethnic_background_arab.rb @@ -14,5 +14,5 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundArab < ::Form::Question "16" => { "value" => "Other ethnic group" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25, 2025 => 23 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_ethnic_background_asian.rb b/app/models/form/sales/questions/buyer1_ethnic_background_asian.rb index 1b982e39c..46e9a8b61 100644 --- a/app/models/form/sales/questions/buyer1_ethnic_background_asian.rb +++ b/app/models/form/sales/questions/buyer1_ethnic_background_asian.rb @@ -17,5 +17,5 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundAsian < ::Form::Question "11" => { "value" => "Any other Asian or Asian British background" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25, 2025 => 23 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_ethnic_background_black.rb b/app/models/form/sales/questions/buyer1_ethnic_background_black.rb index fac93e0eb..7d0e3e456 100644 --- a/app/models/form/sales/questions/buyer1_ethnic_background_black.rb +++ b/app/models/form/sales/questions/buyer1_ethnic_background_black.rb @@ -15,5 +15,5 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundBlack < ::Form::Question "14" => { "value" => "Any other Black, African, Caribbean or Black British background" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25, 2025 => 23 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_ethnic_background_mixed.rb b/app/models/form/sales/questions/buyer1_ethnic_background_mixed.rb index 342490da3..499affd32 100644 --- a/app/models/form/sales/questions/buyer1_ethnic_background_mixed.rb +++ b/app/models/form/sales/questions/buyer1_ethnic_background_mixed.rb @@ -16,5 +16,5 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundMixed < ::Form::Question "7" => { "value" => "Any other Mixed or Multiple ethnic background" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25, 2025 => 23 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_ethnic_background_white.rb b/app/models/form/sales/questions/buyer1_ethnic_background_white.rb index 619c958f9..a085658d6 100644 --- a/app/models/form/sales/questions/buyer1_ethnic_background_white.rb +++ b/app/models/form/sales/questions/buyer1_ethnic_background_white.rb @@ -27,5 +27,5 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundWhite < ::Form::Question end end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 23, 2024 => 25, 2025 => 23 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_ethnic_group.rb b/app/models/form/sales/questions/buyer1_ethnic_group.rb index 9e67164cc..6b07b1769 100644 --- a/app/models/form/sales/questions/buyer1_ethnic_group.rb +++ b/app/models/form/sales/questions/buyer1_ethnic_group.rb @@ -18,5 +18,5 @@ class Form::Sales::Questions::Buyer1EthnicGroup < ::Form::Question "17" => { "value" => "Buyer prefers not to say" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 22, 2024 => 24 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 22, 2024 => 24, 2025 => 22 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_income.rb b/app/models/form/sales/questions/buyer1_income.rb index 3f1159a8f..aa353a217 100644 --- a/app/models/form/sales/questions/buyer1_income.rb +++ b/app/models/form/sales/questions/buyer1_income.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::Buyer1Income < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 67, 2024 => 69 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 67, 2024 => 69, 2025 => 66 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_income_known.rb b/app/models/form/sales/questions/buyer1_income_known.rb index 46c1f4caa..d563bc63c 100644 --- a/app/models/form/sales/questions/buyer1_income_known.rb +++ b/app/models/form/sales/questions/buyer1_income_known.rb @@ -24,5 +24,5 @@ class Form::Sales::Questions::Buyer1IncomeKnown < ::Form::Question "1" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 67, 2024 => 69 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 67, 2024 => 69, 2025 => 66 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_live_in_property.rb b/app/models/form/sales/questions/buyer1_live_in_property.rb index 835cbe4a3..0ff223364 100644 --- a/app/models/form/sales/questions/buyer1_live_in_property.rb +++ b/app/models/form/sales/questions/buyer1_live_in_property.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::Buyer1LiveInProperty < ::Form::Question "2" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 26, 2024 => 28 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 26, 2024 => 28, 2025 => 26 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_mortgage.rb b/app/models/form/sales/questions/buyer1_mortgage.rb index d2a94f6b5..e02637bda 100644 --- a/app/models/form/sales/questions/buyer1_mortgage.rb +++ b/app/models/form/sales/questions/buyer1_mortgage.rb @@ -21,5 +21,5 @@ class Form::Sales::Questions::Buyer1Mortgage < ::Form::Question } end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 68, 2024 => 70 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 68, 2024 => 70, 2025 => 67 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_nationality.rb b/app/models/form/sales/questions/buyer1_nationality.rb index 9cd5f3eed..4d128d3d3 100644 --- a/app/models/form/sales/questions/buyer1_nationality.rb +++ b/app/models/form/sales/questions/buyer1_nationality.rb @@ -22,5 +22,5 @@ class Form::Sales::Questions::Buyer1Nationality < ::Form::Question "13" => { "value" => "Buyer prefers not to say" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 24, 2024 => 26 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 24, 2024 => 26, 2025 => 24 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_previous_tenure.rb b/app/models/form/sales/questions/buyer1_previous_tenure.rb index aea90af30..c24ccb608 100644 --- a/app/models/form/sales/questions/buyer1_previous_tenure.rb +++ b/app/models/form/sales/questions/buyer1_previous_tenure.rb @@ -21,5 +21,5 @@ class Form::Sales::Questions::Buyer1PreviousTenure < ::Form::Question } end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 56, 2024 => 58 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 56, 2024 => 58, 2025 => 56 }.freeze end diff --git a/app/models/form/sales/questions/buyer1_working_situation.rb b/app/models/form/sales/questions/buyer1_working_situation.rb index dbbc24eff..30ca41ac4 100644 --- a/app/models/form/sales/questions/buyer1_working_situation.rb +++ b/app/models/form/sales/questions/buyer1_working_situation.rb @@ -44,5 +44,5 @@ class Form::Sales::Questions::Buyer1WorkingSituation < ::Form::Question end end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 25, 2024 => 27 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 25, 2024 => 27, 2025 => 25 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_age_known.rb b/app/models/form/sales/questions/buyer2_age_known.rb index ecd6c91f0..cc490e006 100644 --- a/app/models/form/sales/questions/buyer2_age_known.rb +++ b/app/models/form/sales/questions/buyer2_age_known.rb @@ -27,5 +27,5 @@ class Form::Sales::Questions::Buyer2AgeKnown < ::Form::Question "1" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 30 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 28, 2024 => 30, 2025 => 28 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_ethnic_background_arab.rb b/app/models/form/sales/questions/buyer2_ethnic_background_arab.rb index e69ad5a9e..914f8588b 100644 --- a/app/models/form/sales/questions/buyer2_ethnic_background_arab.rb +++ b/app/models/form/sales/questions/buyer2_ethnic_background_arab.rb @@ -14,5 +14,5 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundArab < ::Form::Question "16" => { "value" => "Other ethnic group" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33, 2025 => 31 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_ethnic_background_asian.rb b/app/models/form/sales/questions/buyer2_ethnic_background_asian.rb index 8c31fc723..12f6113b2 100644 --- a/app/models/form/sales/questions/buyer2_ethnic_background_asian.rb +++ b/app/models/form/sales/questions/buyer2_ethnic_background_asian.rb @@ -17,5 +17,5 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundAsian < ::Form::Question "11" => { "value" => "Any other Asian or Asian British background" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33, 2025 => 31 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_ethnic_background_black.rb b/app/models/form/sales/questions/buyer2_ethnic_background_black.rb index f44119251..48935667f 100644 --- a/app/models/form/sales/questions/buyer2_ethnic_background_black.rb +++ b/app/models/form/sales/questions/buyer2_ethnic_background_black.rb @@ -15,5 +15,5 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundBlack < ::Form::Question "14" => { "value" => "Any other Black, African, Caribbean or Black British background" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33, 2025 => 31 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_ethnic_background_mixed.rb b/app/models/form/sales/questions/buyer2_ethnic_background_mixed.rb index 013ad100b..f916ba75e 100644 --- a/app/models/form/sales/questions/buyer2_ethnic_background_mixed.rb +++ b/app/models/form/sales/questions/buyer2_ethnic_background_mixed.rb @@ -16,5 +16,5 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundMixed < ::Form::Question "7" => { "value" => "Any other Mixed or Multiple ethnic background" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33, 2025 => 31 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_ethnic_background_white.rb b/app/models/form/sales/questions/buyer2_ethnic_background_white.rb index be3e3ccff..6125bd2da 100644 --- a/app/models/form/sales/questions/buyer2_ethnic_background_white.rb +++ b/app/models/form/sales/questions/buyer2_ethnic_background_white.rb @@ -27,5 +27,5 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundWhite < ::Form::Question end end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 31, 2024 => 33, 2025 => 31 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_ethnic_group.rb b/app/models/form/sales/questions/buyer2_ethnic_group.rb index 4613b9963..1a695313b 100644 --- a/app/models/form/sales/questions/buyer2_ethnic_group.rb +++ b/app/models/form/sales/questions/buyer2_ethnic_group.rb @@ -18,5 +18,5 @@ class Form::Sales::Questions::Buyer2EthnicGroup < ::Form::Question "17" => { "value" => "Buyer prefers not to say" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 30, 2024 => 32 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 30, 2024 => 32, 2025 => 30 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_income.rb b/app/models/form/sales/questions/buyer2_income.rb index 39777f870..9a58d13a2 100644 --- a/app/models/form/sales/questions/buyer2_income.rb +++ b/app/models/form/sales/questions/buyer2_income.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::Buyer2Income < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 69, 2024 => 71 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 69, 2024 => 71, 2025 => 68 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_income_known.rb b/app/models/form/sales/questions/buyer2_income_known.rb index 26d4b2fca..6b0241df8 100644 --- a/app/models/form/sales/questions/buyer2_income_known.rb +++ b/app/models/form/sales/questions/buyer2_income_known.rb @@ -24,5 +24,5 @@ class Form::Sales::Questions::Buyer2IncomeKnown < ::Form::Question "1" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 69, 2024 => 71 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 69, 2024 => 71, 2025 => 68 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_live_in_property.rb b/app/models/form/sales/questions/buyer2_live_in_property.rb index 4d6aad8ba..a5fc82c37 100644 --- a/app/models/form/sales/questions/buyer2_live_in_property.rb +++ b/app/models/form/sales/questions/buyer2_live_in_property.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::Buyer2LiveInProperty < ::Form::Question "2" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 34, 2024 => 36 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 34, 2024 => 36, 2025 => 34 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_living_in.rb b/app/models/form/sales/questions/buyer2_living_in.rb index 0939d119f..58b4661df 100644 --- a/app/models/form/sales/questions/buyer2_living_in.rb +++ b/app/models/form/sales/questions/buyer2_living_in.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::Buyer2LivingIn < ::Form::Question "3" => { "value" => "Don't know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 60, 2024 => 62 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 60, 2024 => 62, 2025 => 59 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_mortgage.rb b/app/models/form/sales/questions/buyer2_mortgage.rb index 415d5b714..05d94bde9 100644 --- a/app/models/form/sales/questions/buyer2_mortgage.rb +++ b/app/models/form/sales/questions/buyer2_mortgage.rb @@ -21,5 +21,5 @@ class Form::Sales::Questions::Buyer2Mortgage < ::Form::Question } end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 70, 2024 => 72 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 70, 2024 => 72, 2025 => 69 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_nationality.rb b/app/models/form/sales/questions/buyer2_nationality.rb index c7e92d294..93bb127aa 100644 --- a/app/models/form/sales/questions/buyer2_nationality.rb +++ b/app/models/form/sales/questions/buyer2_nationality.rb @@ -22,5 +22,5 @@ class Form::Sales::Questions::Buyer2Nationality < ::Form::Question "13" => { "value" => "Buyer prefers not to say" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 32, 2024 => 34 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 32, 2024 => 34, 2025 => 32 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_relationship_to_buyer1.rb b/app/models/form/sales/questions/buyer2_relationship_to_buyer1.rb index fd65f14a2..7f3638d61 100644 --- a/app/models/form/sales/questions/buyer2_relationship_to_buyer1.rb +++ b/app/models/form/sales/questions/buyer2_relationship_to_buyer1.rb @@ -33,5 +33,5 @@ class Form::Sales::Questions::Buyer2RelationshipToBuyer1 < ::Form::Question end end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 27, 2024 => 29 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 27, 2024 => 29, 2025 => 27 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_relationship_to_buyer1_yes_no.rb b/app/models/form/sales/questions/buyer2_relationship_to_buyer1_yes_no.rb index 43fe672e1..84fa336bf 100644 --- a/app/models/form/sales/questions/buyer2_relationship_to_buyer1_yes_no.rb +++ b/app/models/form/sales/questions/buyer2_relationship_to_buyer1_yes_no.rb @@ -19,5 +19,5 @@ class Form::Sales::Questions::Buyer2RelationshipToBuyer1YesNo < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2025 => 29 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2025 => 27 }.freeze end diff --git a/app/models/form/sales/questions/buyer2_working_situation.rb b/app/models/form/sales/questions/buyer2_working_situation.rb index 9105b8597..0e69d09d3 100644 --- a/app/models/form/sales/questions/buyer2_working_situation.rb +++ b/app/models/form/sales/questions/buyer2_working_situation.rb @@ -51,5 +51,5 @@ class Form::Sales::Questions::Buyer2WorkingSituation < ::Form::Question end end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 33, 2024 => 35 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 33, 2024 => 35, 2025 => 33 }.freeze end diff --git a/app/models/form/sales/questions/buyer_interview.rb b/app/models/form/sales/questions/buyer_interview.rb index 50c290904..ef40c4236 100644 --- a/app/models/form/sales/questions/buyer_interview.rb +++ b/app/models/form/sales/questions/buyer_interview.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::BuyerInterview < ::Form::Question "1" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 18, 2024 => 13 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 18, 2024 => 13, 2025 => 11 }.freeze end diff --git a/app/models/form/sales/questions/buyer_still_serving.rb b/app/models/form/sales/questions/buyer_still_serving.rb index 04c1c2307..0106a6349 100644 --- a/app/models/form/sales/questions/buyer_still_serving.rb +++ b/app/models/form/sales/questions/buyer_still_serving.rb @@ -14,5 +14,5 @@ class Form::Sales::Questions::BuyerStillServing < ::Form::Question "7" => { "value" => "Don't know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 63, 2024 => 65 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 63, 2024 => 65, 2025 => 62 }.freeze end diff --git a/app/models/form/sales/questions/county.rb b/app/models/form/sales/questions/county.rb index 8f92a5480..174904a0b 100644 --- a/app/models/form/sales/questions/county.rb +++ b/app/models/form/sales/questions/county.rb @@ -10,5 +10,5 @@ class Form::Sales::Questions::County < ::Form::Question @hide_question_number_on_page = true end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16, 2025 => 14 }.freeze end diff --git a/app/models/form/sales/questions/deposit_amount.rb b/app/models/form/sales/questions/deposit_amount.rb index 6f2b98ce8..aec119496 100644 --- a/app/models/form/sales/questions/deposit_amount.rb +++ b/app/models/form/sales/questions/deposit_amount.rb @@ -21,6 +21,7 @@ class Form::Sales::Questions::DepositAmount < ::Form::Question QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = { 2023 => { 1 => 95, 2 => 108, 3 => 116 }, 2024 => { 1 => 96, 2 => 109, 3 => 116 }, + 2025 => { 1 => 85, 2 => 110 }, }.freeze def top_guidance_partial diff --git a/app/models/form/sales/questions/deposit_discount.rb b/app/models/form/sales/questions/deposit_discount.rb index bfc5f425d..663a8aea0 100644 --- a/app/models/form/sales/questions/deposit_discount.rb +++ b/app/models/form/sales/questions/deposit_discount.rb @@ -12,5 +12,5 @@ class Form::Sales::Questions::DepositDiscount < ::Form::Question @top_guidance_partial = "financial_calculations_shared_ownership" end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 97 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 96, 2024 => 97, 2025 => 86 }.freeze end diff --git a/app/models/form/sales/questions/discount.rb b/app/models/form/sales/questions/discount.rb index 5dcf1f125..7249d3a6f 100644 --- a/app/models/form/sales/questions/discount.rb +++ b/app/models/form/sales/questions/discount.rb @@ -12,5 +12,5 @@ class Form::Sales::Questions::Discount < ::Form::Question @top_guidance_partial = "financial_calculations_discounted_ownership" end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 102, 2024 => 103 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 102, 2024 => 103, 2025 => 105 }.freeze end diff --git a/app/models/form/sales/questions/discounted_ownership_type.rb b/app/models/form/sales/questions/discounted_ownership_type.rb index 6108e4ef8..9d8798f00 100644 --- a/app/models/form/sales/questions/discounted_ownership_type.rb +++ b/app/models/form/sales/questions/discounted_ownership_type.rb @@ -23,5 +23,5 @@ class Form::Sales::Questions::DiscountedOwnershipType < ::Form::Question "discounted_ownership_type_definitions" if form.start_date.year >= 2023 end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 5, 2024 => 7 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 5, 2024 => 7, 2025 => 8 }.freeze end diff --git a/app/models/form/sales/questions/equity.rb b/app/models/form/sales/questions/equity.rb index 74f5e9970..a2539b968 100644 --- a/app/models/form/sales/questions/equity.rb +++ b/app/models/form/sales/questions/equity.rb @@ -9,9 +9,11 @@ class Form::Sales::Questions::Equity < ::Form::Question @step = 0.1 @width = 5 @suffix = "%" - @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] + @question_number = question_number_from_year[form.start_date.year] || question_number_from_year[question_number_from_year.keys.max] @top_guidance_partial = "financial_calculations_shared_ownership" end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 89, 2024 => 90 }.freeze + def question_number_from_year + { 2023 => 89, 2024 => 90, 2025 => subsection.id == "shared_ownership_staircasing_transaction" ? 98 : 81 } + end end diff --git a/app/models/form/sales/questions/extra_borrowing.rb b/app/models/form/sales/questions/extra_borrowing.rb index 2ad13ef5d..6ada3349b 100644 --- a/app/models/form/sales/questions/extra_borrowing.rb +++ b/app/models/form/sales/questions/extra_borrowing.rb @@ -18,5 +18,6 @@ class Form::Sales::Questions::ExtraBorrowing < ::Form::Question QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = { 2023 => { 1 => 94, 2 => 107, 3 => 115 }, 2024 => { 1 => 95, 2 => 108, 3 => 115 }, + 2025 => { 2 => 109 }, }.freeze end diff --git a/app/models/form/sales/questions/fromprop.rb b/app/models/form/sales/questions/fromprop.rb index dec591cd0..16251d7be 100644 --- a/app/models/form/sales/questions/fromprop.rb +++ b/app/models/form/sales/questions/fromprop.rb @@ -27,5 +27,5 @@ class Form::Sales::Questions::Fromprop < ::Form::Question } end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 86, 2024 => 87 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 86, 2024 => 87, 2025 => 78 }.freeze end diff --git a/app/models/form/sales/questions/gender_identity1.rb b/app/models/form/sales/questions/gender_identity1.rb index c82af4b91..42dbc1a21 100644 --- a/app/models/form/sales/questions/gender_identity1.rb +++ b/app/models/form/sales/questions/gender_identity1.rb @@ -15,5 +15,5 @@ class Form::Sales::Questions::GenderIdentity1 < ::Form::Question "R" => { "value" => "Prefers not to say" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 21, 2024 => 23 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 21, 2024 => 23, 2025 => 21 }.freeze end diff --git a/app/models/form/sales/questions/gender_identity2.rb b/app/models/form/sales/questions/gender_identity2.rb index 50545a796..9f3472ea6 100644 --- a/app/models/form/sales/questions/gender_identity2.rb +++ b/app/models/form/sales/questions/gender_identity2.rb @@ -22,5 +22,5 @@ class Form::Sales::Questions::GenderIdentity2 < ::Form::Question "R" => { "value" => "Buyer prefers not to say" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 29, 2024 => 31 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 29, 2024 => 31, 2025 => 29 }.freeze end diff --git a/app/models/form/sales/questions/grant.rb b/app/models/form/sales/questions/grant.rb index f069fedd2..95fe2da3d 100644 --- a/app/models/form/sales/questions/grant.rb +++ b/app/models/form/sales/questions/grant.rb @@ -12,5 +12,5 @@ class Form::Sales::Questions::Grant < ::Form::Question @top_guidance_partial = "financial_calculations_discounted_ownership" end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 101, 2024 => 102 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 101, 2024 => 102, 2025 => 104 }.freeze end diff --git a/app/models/form/sales/questions/handover_date.rb b/app/models/form/sales/questions/handover_date.rb index 8994ecc40..5862dc0e4 100644 --- a/app/models/form/sales/questions/handover_date.rb +++ b/app/models/form/sales/questions/handover_date.rb @@ -7,5 +7,5 @@ class Form::Sales::Questions::HandoverDate < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 82, 2024 => 84 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 82, 2024 => 84, 2025 => 76 }.freeze end diff --git a/app/models/form/sales/questions/has_leasehold_charges.rb b/app/models/form/sales/questions/has_leasehold_charges.rb index fced1d3da..c4998f590 100644 --- a/app/models/form/sales/questions/has_leasehold_charges.rb +++ b/app/models/form/sales/questions/has_leasehold_charges.rb @@ -16,7 +16,7 @@ class Form::Sales::Questions::HasLeaseholdCharges < ::Form::Question ], } @ownershipsch = ownershipsch - @question_number = question_number + @question_number = QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP.fetch(form.start_date.year, QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP.max_by { |k, _v| k }.last)[ownershipsch] end ANSWER_OPTIONS = { @@ -24,14 +24,8 @@ class Form::Sales::Questions::HasLeaseholdCharges < ::Form::Question "0" => { "value" => "No" }, }.freeze - def question_number - case @ownershipsch - when 1 - 99 - when 2 - 110 - when 3 - 117 - end - end + QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = { + 2024 => { 1 => 99, 2 => 110, 3 => 117 }, + 2025 => { 1 => 88, 2 => 111 }, + }.freeze end diff --git a/app/models/form/sales/questions/has_management_fee.rb b/app/models/form/sales/questions/has_management_fee.rb index 20a71ff5e..059e32acb 100644 --- a/app/models/form/sales/questions/has_management_fee.rb +++ b/app/models/form/sales/questions/has_management_fee.rb @@ -15,10 +15,13 @@ class Form::Sales::Questions::HasManagementFee < ::Form::Question }, ], } + @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end ANSWER_OPTIONS = { "1" => { "value" => "Yes" }, "0" => { "value" => "No" }, }.freeze + + QUESTION_NUMBER_FROM_YEAR = { 2025 => 89 }.freeze end diff --git a/app/models/form/sales/questions/household_disability.rb b/app/models/form/sales/questions/household_disability.rb index 3dac19bb6..bdcdf9d30 100644 --- a/app/models/form/sales/questions/household_disability.rb +++ b/app/models/form/sales/questions/household_disability.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::HouseholdDisability < ::Form::Question "3" => { "value" => "Don't know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 65, 2024 => 67 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 65, 2024 => 67, 2025 => 64 }.freeze end diff --git a/app/models/form/sales/questions/household_wheelchair.rb b/app/models/form/sales/questions/household_wheelchair.rb index 4c46bd55d..85a2fbb34 100644 --- a/app/models/form/sales/questions/household_wheelchair.rb +++ b/app/models/form/sales/questions/household_wheelchair.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::HouseholdWheelchair < ::Form::Question "3" => { "value" => "Don't know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 66, 2024 => 68 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 66, 2024 => 68, 2025 => 65 }.freeze end diff --git a/app/models/form/sales/questions/housing_benefits.rb b/app/models/form/sales/questions/housing_benefits.rb index d7a670f2e..b291fa094 100644 --- a/app/models/form/sales/questions/housing_benefits.rb +++ b/app/models/form/sales/questions/housing_benefits.rb @@ -16,5 +16,5 @@ class Form::Sales::Questions::HousingBenefits < ::Form::Question "4" => { "value" => "Don’t know " }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 71, 2024 => 73 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 71, 2024 => 73, 2025 => 70 }.freeze end diff --git a/app/models/form/sales/questions/joint_purchase.rb b/app/models/form/sales/questions/joint_purchase.rb index 7e876a4cc..a03e053bc 100644 --- a/app/models/form/sales/questions/joint_purchase.rb +++ b/app/models/form/sales/questions/joint_purchase.rb @@ -12,5 +12,5 @@ class Form::Sales::Questions::JointPurchase < ::Form::Question "2" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 9, 2024 => 11 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 9, 2024 => 11, 2025 => 9 }.freeze end diff --git a/app/models/form/sales/questions/leasehold_charges.rb b/app/models/form/sales/questions/leasehold_charges.rb index 73d57b1e4..41eb26bcd 100644 --- a/app/models/form/sales/questions/leasehold_charges.rb +++ b/app/models/form/sales/questions/leasehold_charges.rb @@ -15,5 +15,6 @@ class Form::Sales::Questions::LeaseholdCharges < ::Form::Question QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = { 2023 => { 1 => 98, 2 => 109, 3 => 117 }, 2024 => { 1 => 99, 2 => 110, 3 => 117 }, + 2025 => { 1 => 88, 2 => 111 }, }.freeze end diff --git a/app/models/form/sales/questions/living_before_purchase.rb b/app/models/form/sales/questions/living_before_purchase.rb index c4337e38d..06ff095d1 100644 --- a/app/models/form/sales/questions/living_before_purchase.rb +++ b/app/models/form/sales/questions/living_before_purchase.rb @@ -27,5 +27,6 @@ class Form::Sales::Questions::LivingBeforePurchase < ::Form::Question QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = { 2023 => { 1 => 75, 2 => 99 }, 2024 => { 1 => 77, 2 => 100 }, + 2025 => { 1 => 75, 2 => 102 }, }.freeze end diff --git a/app/models/form/sales/questions/living_before_purchase_years.rb b/app/models/form/sales/questions/living_before_purchase_years.rb index 465ba9877..d2df3209b 100644 --- a/app/models/form/sales/questions/living_before_purchase_years.rb +++ b/app/models/form/sales/questions/living_before_purchase_years.rb @@ -18,6 +18,7 @@ class Form::Sales::Questions::LivingBeforePurchaseYears < ::Form::Question QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = { 2023 => { 1 => 75, 2 => 99 }, - 2024 => { 1 => 77, 2 => 101 }, + 2024 => { 1 => 77, 2 => 100 }, + 2025 => { 1 => 75, 2 => 102 }, }.freeze end diff --git a/app/models/form/sales/questions/management_fee.rb b/app/models/form/sales/questions/management_fee.rb index 213b9e3df..d805f3c3c 100644 --- a/app/models/form/sales/questions/management_fee.rb +++ b/app/models/form/sales/questions/management_fee.rb @@ -8,5 +8,8 @@ class Form::Sales::Questions::ManagementFee < ::Form::Question @step = 0.01 @width = 5 @prefix = "£" + @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end + + QUESTION_NUMBER_FROM_YEAR = { 2025 => 89 }.freeze end diff --git a/app/models/form/sales/questions/managing_organisation.rb b/app/models/form/sales/questions/managing_organisation.rb index 17884687f..c5cf8f112 100644 --- a/app/models/form/sales/questions/managing_organisation.rb +++ b/app/models/form/sales/questions/managing_organisation.rb @@ -72,5 +72,5 @@ private true end - QUESTION_NUMBER_FROM_YEAR = { 2024 => 2 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2024 => 2, 2025 => 3 }.freeze end diff --git a/app/models/form/sales/questions/monthly_rent.rb b/app/models/form/sales/questions/monthly_rent.rb index 8e9ecfaef..f2d93e2b2 100644 --- a/app/models/form/sales/questions/monthly_rent.rb +++ b/app/models/form/sales/questions/monthly_rent.rb @@ -10,5 +10,5 @@ class Form::Sales::Questions::MonthlyRent < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 98 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 97, 2024 => 98, 2025 => 87 }.freeze end diff --git a/app/models/form/sales/questions/monthly_rent_after_staircasing.rb b/app/models/form/sales/questions/monthly_rent_after_staircasing.rb index 1116abb7b..da3bd0911 100644 --- a/app/models/form/sales/questions/monthly_rent_after_staircasing.rb +++ b/app/models/form/sales/questions/monthly_rent_after_staircasing.rb @@ -11,5 +11,5 @@ class Form::Sales::Questions::MonthlyRentAfterStaircasing < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2025 => 99 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2025 => 101 }.freeze end diff --git a/app/models/form/sales/questions/monthly_rent_before_staircasing.rb b/app/models/form/sales/questions/monthly_rent_before_staircasing.rb index a7966447a..7e7ded1a9 100644 --- a/app/models/form/sales/questions/monthly_rent_before_staircasing.rb +++ b/app/models/form/sales/questions/monthly_rent_before_staircasing.rb @@ -11,5 +11,5 @@ class Form::Sales::Questions::MonthlyRentBeforeStaircasing < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2025 => 98 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2025 => 100 }.freeze end diff --git a/app/models/form/sales/questions/mortgage_amount.rb b/app/models/form/sales/questions/mortgage_amount.rb index e0677ee18..fa185913c 100644 --- a/app/models/form/sales/questions/mortgage_amount.rb +++ b/app/models/form/sales/questions/mortgage_amount.rb @@ -15,6 +15,7 @@ class Form::Sales::Questions::MortgageAmount < ::Form::Question QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = { 2023 => { 1 => 91, 2 => 104, 3 => 112 }, 2024 => { 1 => 92, 2 => 105, 3 => 113 }, + 2025 => { 1 => 83, 2 => 107 }, }.freeze def derived?(log) diff --git a/app/models/form/sales/questions/mortgage_length.rb b/app/models/form/sales/questions/mortgage_length.rb index 5d94fc832..552b86f56 100644 --- a/app/models/form/sales/questions/mortgage_length.rb +++ b/app/models/form/sales/questions/mortgage_length.rb @@ -18,5 +18,6 @@ class Form::Sales::Questions::MortgageLength < ::Form::Question QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = { 2023 => { 1 => 93, 2 => 106, 3 => 114 }, 2024 => { 1 => 94, 2 => 107, 3 => 114 }, + 2025 => { 1 => 84, 2 => 108 }, }.freeze end diff --git a/app/models/form/sales/questions/mortgageused.rb b/app/models/form/sales/questions/mortgageused.rb index 1c683384b..cb2e61fdf 100644 --- a/app/models/form/sales/questions/mortgageused.rb +++ b/app/models/form/sales/questions/mortgageused.rb @@ -5,7 +5,7 @@ class Form::Sales::Questions::Mortgageused < ::Form::Question @type = "radio" @answer_options = ANSWER_OPTIONS @ownershipsch = ownershipsch - @question_number = QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP.fetch(form.start_date.year, QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP.max_by { |k, _v| k }.last)[ownershipsch] + @question_number = question_number_from_year_and_ownership.fetch(form.start_date.year, question_number_from_year_and_ownership.max_by { |k, _v| k }.last)[ownershipsch] @top_guidance_partial = top_guidance_partial end @@ -29,10 +29,13 @@ class Form::Sales::Questions::Mortgageused < ::Form::Question ANSWER_OPTIONS.reject { |key, _v| key == "3" } end - QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = { - 2023 => { 1 => 90, 2 => 103, 3 => 111 }, - 2024 => { 1 => 91, 2 => 104, 3 => 112 }, - }.freeze + def question_number_from_year_and_ownership + { + 2023 => { 1 => 90, 2 => 103, 3 => 111 }, + 2024 => { 1 => 91, 2 => 104, 3 => 112 }, + 2025 => { 1 => subsection.id == "shared_ownership_staircasing_transaction" ? 99 : 82, 2 => 106 }, + } + end def top_guidance_partial return "financial_calculations_shared_ownership" if @ownershipsch == 1 diff --git a/app/models/form/sales/questions/nationality_all.rb b/app/models/form/sales/questions/nationality_all.rb index 6dd3c19df..6338bb529 100644 --- a/app/models/form/sales/questions/nationality_all.rb +++ b/app/models/form/sales/questions/nationality_all.rb @@ -5,20 +5,18 @@ class Form::Sales::Questions::NationalityAll < ::Form::Question @answer_options = GlobalConstants::COUNTRIES_ANSWER_OPTIONS @check_answers_card_number = buyer_index @buyer_index = buyer_index - @question_number = question_number + @question_number = QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX.fetch(form.start_date.year, QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX.max_by { |k, _v| k }.last)[buyer_index] end def answer_label(log, _current_user = nil) answer_options[log.send(id).to_s]["name"] end - def question_number - if form.start_date.year == 2023 - @buyer_index == 1 ? 24 : 32 - else - @buyer_index == 1 ? 26 : 34 - end - end + QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX = { + 2023 => { 1 => 24, 2 => 32 }, + 2024 => { 1 => 26, 2 => 34 }, + 2025 => { 1 => 24, 2 => 32 }, + }.freeze def label_from_value(value) return unless value diff --git a/app/models/form/sales/questions/nationality_all_group.rb b/app/models/form/sales/questions/nationality_all_group.rb index afbc5bf19..c8a8385f6 100644 --- a/app/models/form/sales/questions/nationality_all_group.rb +++ b/app/models/form/sales/questions/nationality_all_group.rb @@ -7,7 +7,7 @@ class Form::Sales::Questions::NationalityAllGroup < ::Form::Question @conditional_for = buyer_index == 1 ? { "nationality_all" => [12] } : { "nationality_all_buyer2" => [12] } @hidden_in_check_answers = { "depends_on" => [{ id => 12 }] } @buyer_index = buyer_index - @question_number = question_number + @question_number = QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX.fetch(form.start_date.year, QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX.max_by { |k, _v| k }.last)[buyer_index] end ANSWER_OPTIONS = { @@ -16,11 +16,9 @@ class Form::Sales::Questions::NationalityAllGroup < ::Form::Question "0" => { "value" => "Buyer prefers not to say" }, }.freeze - def question_number - if form.start_date.year == 2023 - @buyer_index == 1 ? 24 : 32 - else - @buyer_index == 1 ? 26 : 34 - end - end + QUESTION_NUMBER_FROM_YEAR_AND_BUYER_INDEX = { + 2023 => { 1 => 24, 2 => 32 }, + 2024 => { 1 => 26, 2 => 34 }, + 2025 => { 1 => 24, 2 => 32 }, + }.freeze end diff --git a/app/models/form/sales/questions/number_joint_buyers.rb b/app/models/form/sales/questions/number_joint_buyers.rb index d86e37a93..f7601b9a0 100644 --- a/app/models/form/sales/questions/number_joint_buyers.rb +++ b/app/models/form/sales/questions/number_joint_buyers.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::NumberJointBuyers < ::Form::Question "3" => { "value" => "Don’t know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 10, 2024 => 12 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 10, 2024 => 12, 2025 => 10 }.freeze end diff --git a/app/models/form/sales/questions/number_of_others_in_property.rb b/app/models/form/sales/questions/number_of_others_in_property.rb index c10047da5..9ff4e44be 100644 --- a/app/models/form/sales/questions/number_of_others_in_property.rb +++ b/app/models/form/sales/questions/number_of_others_in_property.rb @@ -11,5 +11,5 @@ class Form::Sales::Questions::NumberOfOthersInProperty < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 35, 2024 => 37 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 35, 2024 => 37, 2025 => 35 }.freeze end diff --git a/app/models/form/sales/questions/owning_organisation_id.rb b/app/models/form/sales/questions/owning_organisation_id.rb index aacccecd3..6ff940865 100644 --- a/app/models/form/sales/questions/owning_organisation_id.rb +++ b/app/models/form/sales/questions/owning_organisation_id.rb @@ -93,5 +93,5 @@ private "#{name} (inactive as of #{merge_date.to_fs(:govuk_date)})" end - QUESTION_NUMBER_FROM_YEAR = { 2023 => nil, 2024 => 1 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => nil, 2024 => 1, 2025 => 2 }.freeze end diff --git a/app/models/form/sales/questions/person_age.rb b/app/models/form/sales/questions/person_age.rb index 1638f6103..0e570d649 100644 --- a/app/models/form/sales/questions/person_age.rb +++ b/app/models/form/sales/questions/person_age.rb @@ -16,13 +16,9 @@ class Form::Sales::Questions::PersonAge < ::Form::Question @question_number = question_number end + BASE_QUESTION_NUMBERS = { 2023 => 29, 2024 => 31, 2025 => 29 }.freeze def question_number - base_question_number = case form.start_date.year - when 2023 - 29 - else - 31 - end + base_question_number = BASE_QUESTION_NUMBERS[form.start_date.year] || BASE_QUESTION_NUMBERS[BASE_QUESTION_NUMBERS.keys.max] base_question_number + (4 * @person_index) end diff --git a/app/models/form/sales/questions/person_age_known.rb b/app/models/form/sales/questions/person_age_known.rb index ede210c80..d3b3a8350 100644 --- a/app/models/form/sales/questions/person_age_known.rb +++ b/app/models/form/sales/questions/person_age_known.rb @@ -27,13 +27,9 @@ class Form::Sales::Questions::PersonAgeKnown < ::Form::Question "1" => { "value" => "No" }, }.freeze + BASE_QUESTION_NUMBERS = { 2023 => 29, 2024 => 31, 2025 => 29 }.freeze def question_number - base_question_number = case form.start_date.year - when 2023 - 29 - else - 31 - end + base_question_number = BASE_QUESTION_NUMBERS[form.start_date.year] || BASE_QUESTION_NUMBERS[BASE_QUESTION_NUMBERS.keys.max] base_question_number + (4 * @person_index) end diff --git a/app/models/form/sales/questions/person_gender_identity.rb b/app/models/form/sales/questions/person_gender_identity.rb index 44cf15a85..5682a2b95 100644 --- a/app/models/form/sales/questions/person_gender_identity.rb +++ b/app/models/form/sales/questions/person_gender_identity.rb @@ -22,13 +22,9 @@ class Form::Sales::Questions::PersonGenderIdentity < ::Form::Question "R" => { "value" => "Person prefers not to say" }, }.freeze + BASE_QUESTION_NUMBERS = { 2023 => 30, 2024 => 32, 2025 => 30 }.freeze def question_number - base_question_number = case form.start_date.year - when 2023 - 30 - else - 32 - end + base_question_number = BASE_QUESTION_NUMBERS[form.start_date.year] || BASE_QUESTION_NUMBERS[BASE_QUESTION_NUMBERS.keys.max] base_question_number + (4 * @person_index) end diff --git a/app/models/form/sales/questions/person_relationship_to_buyer_1_yes_no.rb b/app/models/form/sales/questions/person_relationship_to_buyer_1_yes_no.rb index 60dddfd45..11086b877 100644 --- a/app/models/form/sales/questions/person_relationship_to_buyer_1_yes_no.rb +++ b/app/models/form/sales/questions/person_relationship_to_buyer_1_yes_no.rb @@ -20,10 +20,10 @@ class Form::Sales::Questions::PersonRelationshipToBuyer1YesNo < ::Form::Question end def question_number - base_question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] + base_question_number = BASE_QUESTION_NUMBERS[form.start_date.year] || BASE_QUESTION_NUMBERS[BASE_QUESTION_NUMBERS.keys.max] base_question_number + (4 * @person_index) end - QUESTION_NUMBER_FROM_YEAR = { 2025 => 30 }.freeze + BASE_QUESTION_NUMBERS = { 2025 => 28 }.freeze end diff --git a/app/models/form/sales/questions/person_working_situation.rb b/app/models/form/sales/questions/person_working_situation.rb index f3fbebd6f..ab31561fa 100644 --- a/app/models/form/sales/questions/person_working_situation.rb +++ b/app/models/form/sales/questions/person_working_situation.rb @@ -63,13 +63,9 @@ class Form::Sales::Questions::PersonWorkingSituation < ::Form::Question end end + BASE_QUESTION_NUMBERS = { 2023 => 31, 2024 => 33, 2025 => 31 }.freeze def question_number - base_question_number = case form.start_date.year - when 2023 - 31 - else - 33 - end + base_question_number = BASE_QUESTION_NUMBERS[form.start_date.year] || BASE_QUESTION_NUMBERS[BASE_QUESTION_NUMBERS.keys.max] base_question_number + (4 * @person_index) end diff --git a/app/models/form/sales/questions/postcode_for_full_address.rb b/app/models/form/sales/questions/postcode_for_full_address.rb index 34fbea00b..95656a108 100644 --- a/app/models/form/sales/questions/postcode_for_full_address.rb +++ b/app/models/form/sales/questions/postcode_for_full_address.rb @@ -22,5 +22,5 @@ class Form::Sales::Questions::PostcodeForFullAddress < ::Form::Question @hide_question_number_on_page = true end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16, 2025 => 14 }.freeze end diff --git a/app/models/form/sales/questions/previous_bedrooms.rb b/app/models/form/sales/questions/previous_bedrooms.rb index dd243137d..ad6efd971 100644 --- a/app/models/form/sales/questions/previous_bedrooms.rb +++ b/app/models/form/sales/questions/previous_bedrooms.rb @@ -10,5 +10,5 @@ class Form::Sales::Questions::PreviousBedrooms < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 85, 2024 => 86 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 85, 2024 => 86, 2025 => 77 }.freeze end diff --git a/app/models/form/sales/questions/previous_la_known.rb b/app/models/form/sales/questions/previous_la_known.rb index a54a98d11..21104e3e2 100644 --- a/app/models/form/sales/questions/previous_la_known.rb +++ b/app/models/form/sales/questions/previous_la_known.rb @@ -27,5 +27,5 @@ class Form::Sales::Questions::PreviousLaKnown < ::Form::Question "0" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 58, 2024 => 60 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 58, 2024 => 60, 2025 => 58 }.freeze end diff --git a/app/models/form/sales/questions/previous_postcode.rb b/app/models/form/sales/questions/previous_postcode.rb index 32b4e153e..7d8ecb072 100644 --- a/app/models/form/sales/questions/previous_postcode.rb +++ b/app/models/form/sales/questions/previous_postcode.rb @@ -20,5 +20,5 @@ class Form::Sales::Questions::PreviousPostcode < ::Form::Question @disable_clearing_if_not_routed_or_dynamic_answer_options = true end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 57, 2024 => 59 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 57, 2024 => 59, 2025 => 57 }.freeze end diff --git a/app/models/form/sales/questions/previous_postcode_known.rb b/app/models/form/sales/questions/previous_postcode_known.rb index c2156b887..0baa33f58 100644 --- a/app/models/form/sales/questions/previous_postcode_known.rb +++ b/app/models/form/sales/questions/previous_postcode_known.rb @@ -27,5 +27,5 @@ class Form::Sales::Questions::PreviousPostcodeKnown < ::Form::Question "1" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 57, 2024 => 59 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 57, 2024 => 59, 2025 => 57 }.freeze end diff --git a/app/models/form/sales/questions/previous_tenure.rb b/app/models/form/sales/questions/previous_tenure.rb index 794d449b5..98bf3e988 100644 --- a/app/models/form/sales/questions/previous_tenure.rb +++ b/app/models/form/sales/questions/previous_tenure.rb @@ -16,5 +16,5 @@ class Form::Sales::Questions::PreviousTenure < ::Form::Question "10" => { "value" => "Don’t know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 87, 2024 => 88 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 87, 2024 => 88, 2025 => 79 }.freeze end diff --git a/app/models/form/sales/questions/previous_tenure_buyer2.rb b/app/models/form/sales/questions/previous_tenure_buyer2.rb index db606e254..e000e66fa 100644 --- a/app/models/form/sales/questions/previous_tenure_buyer2.rb +++ b/app/models/form/sales/questions/previous_tenure_buyer2.rb @@ -19,5 +19,5 @@ class Form::Sales::Questions::PreviousTenureBuyer2 < ::Form::Question "0" => { "value" => "Don't know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 61, 2024 => 63 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 61, 2024 => 63, 2025 => 60 }.freeze end diff --git a/app/models/form/sales/questions/prevloc.rb b/app/models/form/sales/questions/prevloc.rb index 5deb48877..95a34ef55 100644 --- a/app/models/form/sales/questions/prevloc.rb +++ b/app/models/form/sales/questions/prevloc.rb @@ -18,5 +18,5 @@ class Form::Sales::Questions::Prevloc < ::Form::Question { "" => "Select an option" }.merge(LocalAuthority.active(form.start_date).map { |la| [la.code, la.name] }.to_h) end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 58, 2024 => 60 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 58, 2024 => 60, 2025 => 58 }.freeze end diff --git a/app/models/form/sales/questions/prevown.rb b/app/models/form/sales/questions/prevown.rb index ecd6c9071..8e508d6d1 100644 --- a/app/models/form/sales/questions/prevown.rb +++ b/app/models/form/sales/questions/prevown.rb @@ -14,5 +14,5 @@ class Form::Sales::Questions::Prevown < ::Form::Question "3" => { "value" => "Don’t know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 73, 2024 => 75 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 73, 2024 => 75, 2025 => 72 }.freeze end diff --git a/app/models/form/sales/questions/prevshared.rb b/app/models/form/sales/questions/prevshared.rb index f4ced14b9..e438d84bd 100644 --- a/app/models/form/sales/questions/prevshared.rb +++ b/app/models/form/sales/questions/prevshared.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::Prevshared < ::Form::Question "3" => { "value" => "Don’t know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 74, 2024 => 76 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 74, 2024 => 76, 2025 => 73 }.freeze end diff --git a/app/models/form/sales/questions/privacy_notice.rb b/app/models/form/sales/questions/privacy_notice.rb index ace2c9ec1..3ce2606ed 100644 --- a/app/models/form/sales/questions/privacy_notice.rb +++ b/app/models/form/sales/questions/privacy_notice.rb @@ -32,5 +32,5 @@ class Form::Sales::Questions::PrivacyNotice < ::Form::Question @joint_purchase ? "privacy_notice_buyer_joint_purchase" : "privacy_notice_buyer" end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 19, 2024 => 14 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 19, 2024 => 14, 2025 => 12 }.freeze end diff --git a/app/models/form/sales/questions/property_building_type.rb b/app/models/form/sales/questions/property_building_type.rb index 42b65a57a..4af2f1b39 100644 --- a/app/models/form/sales/questions/property_building_type.rb +++ b/app/models/form/sales/questions/property_building_type.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::PropertyBuildingType < ::Form::Question "2" => { "value" => "Converted from previous residential or non-residential property" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 13, 2024 => 20 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 13, 2024 => 20, 2025 => 18 }.freeze end diff --git a/app/models/form/sales/questions/property_local_authority.rb b/app/models/form/sales/questions/property_local_authority.rb index 053ee8fde..294c29172 100644 --- a/app/models/form/sales/questions/property_local_authority.rb +++ b/app/models/form/sales/questions/property_local_authority.rb @@ -15,5 +15,5 @@ class Form::Sales::Questions::PropertyLocalAuthority < ::Form::Question log.saledate && log.saledate.year >= 2023 && log.is_la_inferred? end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 16, 2024 => 17 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 16, 2024 => 17, 2025 => 15 }.freeze end diff --git a/app/models/form/sales/questions/property_number_of_bedrooms.rb b/app/models/form/sales/questions/property_number_of_bedrooms.rb index c394fe334..734891d4a 100644 --- a/app/models/form/sales/questions/property_number_of_bedrooms.rb +++ b/app/models/form/sales/questions/property_number_of_bedrooms.rb @@ -11,5 +11,5 @@ class Form::Sales::Questions::PropertyNumberOfBedrooms < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 11, 2024 => 18 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 11, 2024 => 18, 2025 => 17 }.freeze end diff --git a/app/models/form/sales/questions/property_unit_type.rb b/app/models/form/sales/questions/property_unit_type.rb index 45e935941..3602d0293 100644 --- a/app/models/form/sales/questions/property_unit_type.rb +++ b/app/models/form/sales/questions/property_unit_type.rb @@ -16,5 +16,5 @@ class Form::Sales::Questions::PropertyUnitType < ::Form::Question "9" => { "value" => "Other" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 19 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 12, 2024 => 19, 2025 => 16 }.freeze end diff --git a/app/models/form/sales/questions/property_wheelchair_accessible.rb b/app/models/form/sales/questions/property_wheelchair_accessible.rb index fd79bda9e..6ceed6668 100644 --- a/app/models/form/sales/questions/property_wheelchair_accessible.rb +++ b/app/models/form/sales/questions/property_wheelchair_accessible.rb @@ -14,5 +14,5 @@ class Form::Sales::Questions::PropertyWheelchairAccessible < ::Form::Question "3" => { "value" => "Don't know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 17, 2024 => 21 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 17, 2024 => 21, 2025 => 19 }.freeze end diff --git a/app/models/form/sales/questions/purchase_price.rb b/app/models/form/sales/questions/purchase_price.rb index 44497b727..213d45b4b 100644 --- a/app/models/form/sales/questions/purchase_price.rb +++ b/app/models/form/sales/questions/purchase_price.rb @@ -15,6 +15,7 @@ class Form::Sales::Questions::PurchasePrice < ::Form::Question QUESTION_NUMBER_FROM_YEAR_AND_OWNERSHIP = { 2023 => { 2 => 100, 3 => 110 }, 2024 => { 2 => 101, 3 => 111 }, + 2025 => { 2 => 103 }, }.freeze def copy_key diff --git a/app/models/form/sales/questions/resale.rb b/app/models/form/sales/questions/resale.rb index 2417960b4..7c030079e 100644 --- a/app/models/form/sales/questions/resale.rb +++ b/app/models/form/sales/questions/resale.rb @@ -12,5 +12,5 @@ class Form::Sales::Questions::Resale < ::Form::Question "2" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 80, 2024 => 82 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 80, 2024 => 82, 2025 => 74 }.freeze end diff --git a/app/models/form/sales/questions/sale_date.rb b/app/models/form/sales/questions/sale_date.rb index 00f0c86dd..8adefd87c 100644 --- a/app/models/form/sales/questions/sale_date.rb +++ b/app/models/form/sales/questions/sale_date.rb @@ -6,5 +6,5 @@ class Form::Sales::Questions::SaleDate < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 1, 2024 => 3 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 1, 2024 => 3, 2025 => 1 }.freeze end diff --git a/app/models/form/sales/questions/savings.rb b/app/models/form/sales/questions/savings.rb index bb1f939a5..8ea22cc54 100644 --- a/app/models/form/sales/questions/savings.rb +++ b/app/models/form/sales/questions/savings.rb @@ -11,5 +11,5 @@ class Form::Sales::Questions::Savings < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 72, 2024 => 74 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 72, 2024 => 74, 2025 => 71 }.freeze end diff --git a/app/models/form/sales/questions/savings_nk.rb b/app/models/form/sales/questions/savings_nk.rb index 3c7e115f4..6aaf6de5e 100644 --- a/app/models/form/sales/questions/savings_nk.rb +++ b/app/models/form/sales/questions/savings_nk.rb @@ -23,5 +23,5 @@ class Form::Sales::Questions::SavingsNk < ::Form::Question "1" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 72, 2024 => 74 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 72, 2024 => 74, 2025 => 71 }.freeze end diff --git a/app/models/form/sales/questions/staircase.rb b/app/models/form/sales/questions/staircase.rb index d61456a8e..86b5ca625 100644 --- a/app/models/form/sales/questions/staircase.rb +++ b/app/models/form/sales/questions/staircase.rb @@ -22,5 +22,5 @@ class Form::Sales::Questions::Staircase < ::Form::Question end end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 76, 2024 => 78 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 76, 2024 => 78, 2025 => 7 }.freeze end diff --git a/app/models/form/sales/questions/staircase_bought.rb b/app/models/form/sales/questions/staircase_bought.rb index a9a3d6f23..e13a9c9f3 100644 --- a/app/models/form/sales/questions/staircase_bought.rb +++ b/app/models/form/sales/questions/staircase_bought.rb @@ -13,5 +13,5 @@ class Form::Sales::Questions::StaircaseBought < ::Form::Question @top_guidance_partial = "financial_calculations_shared_ownership" end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 77, 2024 => 79 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 77, 2024 => 79, 2025 => 90 }.freeze end diff --git a/app/models/form/sales/questions/staircase_count.rb b/app/models/form/sales/questions/staircase_count.rb index 07095cd6a..76d56a823 100644 --- a/app/models/form/sales/questions/staircase_count.rb +++ b/app/models/form/sales/questions/staircase_count.rb @@ -11,5 +11,5 @@ class Form::Sales::Questions::StaircaseCount < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2025 => 82 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2025 => 94 }.freeze end diff --git a/app/models/form/sales/questions/staircase_first_time.rb b/app/models/form/sales/questions/staircase_first_time.rb index fed2c34fb..bf532ae6e 100644 --- a/app/models/form/sales/questions/staircase_first_time.rb +++ b/app/models/form/sales/questions/staircase_first_time.rb @@ -12,5 +12,5 @@ class Form::Sales::Questions::StaircaseFirstTime < ::Form::Question "2" => { "value" => "No" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2025 => 81 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2025 => 93 }.freeze end diff --git a/app/models/form/sales/questions/staircase_initial_date.rb b/app/models/form/sales/questions/staircase_initial_date.rb index b810d6689..dc4b54308 100644 --- a/app/models/form/sales/questions/staircase_initial_date.rb +++ b/app/models/form/sales/questions/staircase_initial_date.rb @@ -7,5 +7,5 @@ class Form::Sales::Questions::StaircaseInitialDate < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2025 => 83 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2025 => 96 }.freeze end diff --git a/app/models/form/sales/questions/staircase_last_date.rb b/app/models/form/sales/questions/staircase_last_date.rb index edb75e823..31e2dff55 100644 --- a/app/models/form/sales/questions/staircase_last_date.rb +++ b/app/models/form/sales/questions/staircase_last_date.rb @@ -7,5 +7,5 @@ class Form::Sales::Questions::StaircaseLastDate < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2025 => 83 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2025 => 95 }.freeze end diff --git a/app/models/form/sales/questions/staircase_owned.rb b/app/models/form/sales/questions/staircase_owned.rb index e0ec8865c..6bcdc829d 100644 --- a/app/models/form/sales/questions/staircase_owned.rb +++ b/app/models/form/sales/questions/staircase_owned.rb @@ -12,5 +12,5 @@ class Form::Sales::Questions::StaircaseOwned < ::Form::Question @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 78, 2024 => 80 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 78, 2024 => 80, 2025 => 91 }.freeze end diff --git a/app/models/form/sales/questions/staircase_sale.rb b/app/models/form/sales/questions/staircase_sale.rb index de0977ecb..0aa182592 100644 --- a/app/models/form/sales/questions/staircase_sale.rb +++ b/app/models/form/sales/questions/staircase_sale.rb @@ -14,5 +14,5 @@ class Form::Sales::Questions::StaircaseSale < ::Form::Question "3" => { "value" => "Don't know" }, }.freeze - QUESTION_NUMBER_FROM_YEAR = { 2023 => 79, 2024 => 81 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 79, 2024 => 81, 2025 => 92 }.freeze end diff --git a/app/models/form/sales/questions/town_or_city.rb b/app/models/form/sales/questions/town_or_city.rb index 9536c024f..7f2762689 100644 --- a/app/models/form/sales/questions/town_or_city.rb +++ b/app/models/form/sales/questions/town_or_city.rb @@ -10,5 +10,5 @@ class Form::Sales::Questions::TownOrCity < ::Form::Question @hide_question_number_on_page = true end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 15, 2024 => 16, 2025 => 14 }.freeze end diff --git a/app/models/form/sales/questions/uprn.rb b/app/models/form/sales/questions/uprn.rb index ea0df85ab..715851b92 100644 --- a/app/models/form/sales/questions/uprn.rb +++ b/app/models/form/sales/questions/uprn.rb @@ -35,5 +35,5 @@ class Form::Sales::Questions::Uprn < ::Form::Question "\n\n#{value.join("\n")}" end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 14, 2024 => 15 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 14, 2024 => 15, 2025 => 13 }.freeze end diff --git a/app/models/form/sales/questions/uprn_known.rb b/app/models/form/sales/questions/uprn_known.rb index e35642bee..2b9a83327 100644 --- a/app/models/form/sales/questions/uprn_known.rb +++ b/app/models/form/sales/questions/uprn_known.rb @@ -30,5 +30,5 @@ class Form::Sales::Questions::UprnKnown < ::Form::Question I18n.t("validations.sales.property_information.uprn_known.invalid") end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 14, 2024 => 15 }.freeze + QUESTION_NUMBER_FROM_YEAR = { 2023 => 14, 2024 => 15, 2025 => 13 }.freeze end diff --git a/app/models/form/sales/questions/value.rb b/app/models/form/sales/questions/value.rb index ce8d07e28..c569f8886 100644 --- a/app/models/form/sales/questions/value.rb +++ b/app/models/form/sales/questions/value.rb @@ -8,9 +8,11 @@ class Form::Sales::Questions::Value < ::Form::Question @step = 1 @width = 5 @prefix = "£" - @question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max] + @question_number = question_number_from_year[form.start_date.year] || question_number_from_year[question_number_from_year.keys.max] @top_guidance_partial = "financial_calculations_shared_ownership" end - QUESTION_NUMBER_FROM_YEAR = { 2023 => 88, 2024 => 89 }.freeze + def question_number_from_year + { 2023 => 88, 2024 => 89, 2025 => subsection.id == "shared_ownership_staircasing_transaction" ? 97 : 80 } + end end diff --git a/docs/setup.md b/docs/setup.md index 4400a7ae2..7b7eed9b9 100644 --- a/docs/setup.md +++ b/docs/setup.md @@ -66,8 +66,8 @@ We recommend using [nvm](https://github.com/nvm-sh/nvm) to manage NodeJS version 4. Install Ruby and Bundler ```bash - rbenv install 3.1.4 - rbenv global 3.1.4 + rbenv install 3.1.6 + rbenv global 3.1.6 source ~/.bashrc gem install bundler ``` diff --git a/spec/models/form/lettings/questions/first_time_property_let_as_social_housing_spec.rb b/spec/models/form/lettings/questions/first_time_property_let_as_social_housing_spec.rb index 756f5e84e..552734991 100644 --- a/spec/models/form/lettings/questions/first_time_property_let_as_social_housing_spec.rb +++ b/spec/models/form/lettings/questions/first_time_property_let_as_social_housing_spec.rb @@ -33,6 +33,8 @@ RSpec.describe Form::Lettings::Questions::FirstTimePropertyLetAsSocialHousing, t end context "with 2024/25 form" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) } + before do allow(form).to receive(:start_year_2024_or_later?).and_return(true) end @@ -43,5 +45,21 @@ RSpec.describe Form::Lettings::Questions::FirstTimePropertyLetAsSocialHousing, t "0" => { "value" => "No", "hint" => "This is a re-let of existing social housing stock." }, }) end + + it "has the correct question number" do + expect(question.question_number).to eq(15) + end + end + + context "with 2025/26 form" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2025, 4, 1)) } + + before do + allow(form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(12) + end end end diff --git a/spec/models/form/lettings/questions/joint_spec.rb b/spec/models/form/lettings/questions/joint_spec.rb index d856e9c18..2a10bc5cf 100644 --- a/spec/models/form/lettings/questions/joint_spec.rb +++ b/spec/models/form/lettings/questions/joint_spec.rb @@ -39,4 +39,28 @@ RSpec.describe Form::Lettings::Questions::Joint, type: :model do it "is not marked as derived" do expect(question.derived?(nil)).to be false end + + context "with 2024/25 form" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) } + + before do + allow(form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(25) + end + end + + context "with 2025/26 form" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2025, 4, 1)) } + + before do + allow(form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(26) + end + end end diff --git a/spec/models/form/lettings/questions/la_spec.rb b/spec/models/form/lettings/questions/la_spec.rb index 5f8d650f4..9812500c6 100644 --- a/spec/models/form/lettings/questions/la_spec.rb +++ b/spec/models/form/lettings/questions/la_spec.rb @@ -310,4 +310,28 @@ RSpec.describe Form::Lettings::Questions::La, type: :model do "E06000065" => "North Yorkshire", }) end + + context "with 2024/25 form" do + let(:start_date) { Time.utc(2024, 4, 1) } + + before do + allow(subsection.form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(14) + end + end + + context "with 2025/26 form" do + let(:start_date) { Time.utc(2025, 4, 1) } + + before do + allow(subsection.form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(18) + end + end end diff --git a/spec/models/form/lettings/questions/previous_let_type_spec.rb b/spec/models/form/lettings/questions/previous_let_type_spec.rb index 856d88bf5..27ad8b0b0 100644 --- a/spec/models/form/lettings/questions/previous_let_type_spec.rb +++ b/spec/models/form/lettings/questions/previous_let_type_spec.rb @@ -44,6 +44,8 @@ RSpec.describe Form::Lettings::Questions::PreviousLetType, type: :model do end context "with collection year on or after 2024" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) } + before do allow(form).to receive(:start_year_2024_or_later?).and_return(true) end @@ -60,9 +62,15 @@ RSpec.describe Form::Lettings::Questions::PreviousLetType, type: :model do "3" => { "value" => "Don’t know" }, }) end + + it "has the correct question number" do + expect(question.question_number).to eq(17) + end end context "with collection year on or after 2025" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2025, 4, 1)) } + before do allow(form).to receive(:start_year_2025_or_later?).and_return(true) end @@ -80,5 +88,9 @@ RSpec.describe Form::Lettings::Questions::PreviousLetType, type: :model do "3" => { "value" => "Don’t know" }, }) end + + it "has the correct question number" do + expect(question.question_number).to eq(14) + end end end diff --git a/spec/models/form/lettings/questions/rsnvac_spec.rb b/spec/models/form/lettings/questions/rsnvac_spec.rb index 5eb37ddb5..6d4145f95 100644 --- a/spec/models/form/lettings/questions/rsnvac_spec.rb +++ b/spec/models/form/lettings/questions/rsnvac_spec.rb @@ -76,7 +76,13 @@ RSpec.describe Form::Lettings::Questions::Rsnvac, type: :model do end end + it "has the correct check_answers_card_number" do + expect(question.check_answers_card_number).to eq(0) + end + context "with 2024/25 form" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) } + before do allow(form).to receive(:start_year_2024_or_later?).and_return(true) end @@ -129,9 +135,21 @@ RSpec.describe Form::Lettings::Questions::Rsnvac, type: :model do }, }) end + + it "has the correct question number" do + expect(question.question_number).to eq(18) + end end - it "has the correct check_answers_card_number" do - expect(question.check_answers_card_number).to eq(0) + context "with 2025/26 form" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2025, 4, 1)) } + + before do + allow(form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(15) + end end end diff --git a/spec/models/form/lettings/questions/sheltered_spec.rb b/spec/models/form/lettings/questions/sheltered_spec.rb index 7b3ee9d86..4ff9268da 100644 --- a/spec/models/form/lettings/questions/sheltered_spec.rb +++ b/spec/models/form/lettings/questions/sheltered_spec.rb @@ -26,6 +26,8 @@ RSpec.describe Form::Lettings::Questions::Sheltered, type: :model do end context "with 2024/25 form" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) } + before do allow(form).to receive(:start_year_2024_or_later?).and_return(true) allow(form).to receive(:start_year_2025_or_later?).and_return(false) @@ -42,9 +44,15 @@ RSpec.describe Form::Lettings::Questions::Sheltered, type: :model do "4" => { "value" => "Don’t know" }, }) end + + it "has the correct question number" do + expect(question.question_number).to eq(29) + end end context "with 2025/26 form" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2025, 4, 1)) } + before do allow(form).to receive(:start_year_2024_or_later?).and_return(true) allow(form).to receive(:start_year_2025_or_later?).and_return(true) @@ -60,6 +68,10 @@ RSpec.describe Form::Lettings::Questions::Sheltered, type: :model do "4" => { "value" => "Don’t know" }, }) end + + it "has the correct question number" do + expect(question.question_number).to eq(25) + end end it "is not marked as derived" do diff --git a/spec/models/form/lettings/questions/starter_tenancy_type_spec.rb b/spec/models/form/lettings/questions/starter_tenancy_type_spec.rb index 1100796c8..b6ae1ed92 100644 --- a/spec/models/form/lettings/questions/starter_tenancy_type_spec.rb +++ b/spec/models/form/lettings/questions/starter_tenancy_type_spec.rb @@ -49,6 +49,8 @@ RSpec.describe Form::Lettings::Questions::StarterTenancyType, type: :model do end context "with 2024/25 form" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) } + before do allow(form).to receive(:start_year_2024_or_later?).and_return(true) end @@ -84,5 +86,21 @@ RSpec.describe Form::Lettings::Questions::StarterTenancyType, type: :model do }, ) end + + it "has the correct question number" do + expect(question.question_number).to eq(27) + end + end + + context "with 2025/26 form" do + let(:form) { instance_double(Form, start_date: Time.zone.local(2025, 4, 1)) } + + before do + allow(form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(28) + end end end diff --git a/spec/models/form/lettings/questions/tenancy_length_affordable_rent_spec.rb b/spec/models/form/lettings/questions/tenancy_length_affordable_rent_spec.rb index ba9a72001..2763bfd42 100644 --- a/spec/models/form/lettings/questions/tenancy_length_affordable_rent_spec.rb +++ b/spec/models/form/lettings/questions/tenancy_length_affordable_rent_spec.rb @@ -7,7 +7,8 @@ RSpec.describe Form::Lettings::Questions::TenancyLengthAffordableRent, type: :mo let(:question_definition) { nil } let(:page) { instance_double(Form::Page, id: "affordable_tenancy_length") } let(:subsection) { instance_double(Form::Subsection) } - let(:form) { instance_double(Form, start_date: Time.zone.local(2023, 4, 1)) } + let(:form) { instance_double(Form, start_date:) } + let(:start_date) { Time.utc(2023, 4, 1) } before do allow(form).to receive(:start_year_2024_or_later?).and_return(false) @@ -26,4 +27,28 @@ RSpec.describe Form::Lettings::Questions::TenancyLengthAffordableRent, type: :mo it "has the correct type" do expect(question.type).to eq("numeric") end + + context "with 2024/25 form" do + let(:start_date) { Time.utc(2024, 4, 1) } + + before do + allow(form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(28) + end + end + + context "with 2025/26 form" do + let(:start_date) { Time.utc(2025, 4, 1) } + + before do + allow(form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(29) + end + end end diff --git a/spec/models/form/lettings/questions/tenancy_length_intermediate_rent_spec.rb b/spec/models/form/lettings/questions/tenancy_length_intermediate_rent_spec.rb index 55b51ccfa..5b58d55db 100644 --- a/spec/models/form/lettings/questions/tenancy_length_intermediate_rent_spec.rb +++ b/spec/models/form/lettings/questions/tenancy_length_intermediate_rent_spec.rb @@ -7,7 +7,8 @@ RSpec.describe Form::Lettings::Questions::TenancyLengthIntermediateRent, type: : let(:question_definition) { nil } let(:page) { instance_double(Form::Page, id: "intermediate_tenancy_length") } let(:subsection) { instance_double(Form::Subsection) } - let(:form) { instance_double(Form, start_date: Time.zone.local(2023, 4, 1)) } + let(:form) { instance_double(Form, start_date:) } + let(:start_date) { Time.utc(2023, 4, 1) } before do allow(form).to receive(:start_year_2024_or_later?).and_return(false) @@ -26,4 +27,28 @@ RSpec.describe Form::Lettings::Questions::TenancyLengthIntermediateRent, type: : it "has the correct type" do expect(question.type).to eq("numeric") end + + context "with 2024/25 form" do + let(:start_date) { Time.utc(2024, 4, 1) } + + before do + allow(form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(28) + end + end + + context "with 2025/26 form" do + let(:start_date) { Time.utc(2025, 4, 1) } + + before do + allow(form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(29) + end + end end diff --git a/spec/models/form/lettings/questions/tenancy_length_periodic_spec.rb b/spec/models/form/lettings/questions/tenancy_length_periodic_spec.rb index 449677736..4bb511dbc 100644 --- a/spec/models/form/lettings/questions/tenancy_length_periodic_spec.rb +++ b/spec/models/form/lettings/questions/tenancy_length_periodic_spec.rb @@ -5,7 +5,8 @@ RSpec.describe Form::Lettings::Questions::TenancyLengthPeriodic, type: :model do let(:question_id) { nil } let(:question_definition) { nil } - let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1))), id: "periodic_tenancy_length") } + let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date:)), id: "periodic_tenancy_length") } + let(:start_date) { Time.utc(2023, 4, 1) } it "has correct page" do expect(question.page).to eq(page) @@ -18,4 +19,28 @@ RSpec.describe Form::Lettings::Questions::TenancyLengthPeriodic, type: :model do it "has the correct type" do expect(question.type).to eq("numeric") end + + context "with 2024/25 form" do + let(:start_date) { Time.utc(2024, 4, 1) } + + before do + allow(page.subsection.form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(28) + end + end + + context "with 2025/26 form" do + let(:start_date) { Time.utc(2025, 4, 1) } + + before do + allow(page.subsection.form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(29) + end + end end diff --git a/spec/models/form/lettings/questions/tenancy_length_spec.rb b/spec/models/form/lettings/questions/tenancy_length_spec.rb index cc7bf9f9f..3046c290f 100644 --- a/spec/models/form/lettings/questions/tenancy_length_spec.rb +++ b/spec/models/form/lettings/questions/tenancy_length_spec.rb @@ -3,7 +3,8 @@ require "rails_helper" RSpec.describe Form::Lettings::Questions::TenancyLength, type: :model do subject(:question) { described_class.new(nil, nil, page) } - let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1))), id: "tenancy_length") } + let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date:)), id: "tenancy_length") } + let(:start_date) { Time.utc(2023, 4, 1) } it "has correct page" do expect(question.page).to eq(page) @@ -29,4 +30,28 @@ RSpec.describe Form::Lettings::Questions::TenancyLength, type: :model do it "is not marked as derived" do expect(question.derived?(nil)).to be false end + + context "with 2024/25 form" do + let(:start_date) { Time.utc(2024, 4, 1) } + + before do + allow(page.subsection.form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(28) + end + end + + context "with 2025/26 form" do + let(:start_date) { Time.utc(2025, 4, 1) } + + before do + allow(page.subsection.form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(29) + end + end end diff --git a/spec/models/form/lettings/questions/tenancy_other_spec.rb b/spec/models/form/lettings/questions/tenancy_other_spec.rb index a6a2962dc..38bd87d05 100644 --- a/spec/models/form/lettings/questions/tenancy_other_spec.rb +++ b/spec/models/form/lettings/questions/tenancy_other_spec.rb @@ -3,7 +3,8 @@ require "rails_helper" RSpec.describe Form::Lettings::Questions::TenancyOther, type: :model do subject(:question) { described_class.new(nil, nil, page) } - let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1))), id: "tenancy_type") } + let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date:)), id: "tenancy_type") } + let(:start_date) { Time.utc(2023, 4, 1) } it "has correct page" do expect(question.page).to eq(page) @@ -20,4 +21,28 @@ RSpec.describe Form::Lettings::Questions::TenancyOther, type: :model do it "is not marked as derived" do expect(question.derived?(nil)).to be false end + + context "with 2024/25 form" do + let(:start_date) { Time.utc(2024, 4, 1) } + + before do + allow(page.subsection.form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(27) + end + end + + context "with 2025/26 form" do + let(:start_date) { Time.utc(2025, 4, 1) } + + before do + allow(page.subsection.form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(28) + end + end end diff --git a/spec/models/form/lettings/questions/tenancy_type_spec.rb b/spec/models/form/lettings/questions/tenancy_type_spec.rb index 82a5ae3e7..13cb5bb77 100644 --- a/spec/models/form/lettings/questions/tenancy_type_spec.rb +++ b/spec/models/form/lettings/questions/tenancy_type_spec.rb @@ -5,7 +5,8 @@ RSpec.describe Form::Lettings::Questions::TenancyType, type: :model do let(:page) { instance_double(Form::Page, id: "tenancy_type") } let(:subsection) { instance_double(Form::Subsection) } - let(:form) { instance_double(Form, start_date: Time.zone.local(2023, 4, 1)) } + let(:form) { instance_double(Form, start_date:) } + let(:start_date) { Time.utc(2023, 4, 1) } before do allow(form).to receive(:start_year_2024_or_later?).and_return(false) @@ -64,6 +65,8 @@ RSpec.describe Form::Lettings::Questions::TenancyType, type: :model do end context "with 2024/25 form" do + let(:start_date) { Time.utc(2024, 4, 1) } + before do allow(form).to receive(:start_year_2024_or_later?).and_return(true) end @@ -99,6 +102,22 @@ RSpec.describe Form::Lettings::Questions::TenancyType, type: :model do }, ) end + + it "has the correct question number" do + expect(question.question_number).to eq(27) + end + end + + context "with 2025/26 form" do + let(:start_date) { Time.utc(2025, 4, 1) } + + before do + allow(form).to receive(:start_year_2024_or_later?).and_return(true) + end + + it "has the correct question number" do + expect(question.question_number).to eq(28) + end end it "is not marked as derived" do diff --git a/spec/models/form/sales/pages/equity_spec.rb b/spec/models/form/sales/pages/equity_spec.rb index e27538263..82d36e59c 100644 --- a/spec/models/form/sales/pages/equity_spec.rb +++ b/spec/models/form/sales/pages/equity_spec.rb @@ -5,7 +5,7 @@ RSpec.describe Form::Sales::Pages::Equity, type: :model do let(:page_id) { nil } let(:page_definition) { nil } - let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1))) } + let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1)), id: "shared_ownership") } before do allow(page.subsection.form).to receive(:start_year_2025_or_later?).and_return(false) diff --git a/spec/models/form/sales/pages/value_shared_ownership_spec.rb b/spec/models/form/sales/pages/value_shared_ownership_spec.rb index 82e6c1055..579084b35 100644 --- a/spec/models/form/sales/pages/value_shared_ownership_spec.rb +++ b/spec/models/form/sales/pages/value_shared_ownership_spec.rb @@ -5,7 +5,7 @@ RSpec.describe Form::Sales::Pages::ValueSharedOwnership, type: :model do let(:page_id) { "value_shared_ownership" } let(:page_definition) { nil } - let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1))) } + let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1)), id: "shared_ownership") } before do allow(page.subsection.form).to receive(:start_year_2025_or_later?).and_return(false) diff --git a/spec/models/form/sales/questions/equity_spec.rb b/spec/models/form/sales/questions/equity_spec.rb index 3e6b9d85a..95dce0ce8 100644 --- a/spec/models/form/sales/questions/equity_spec.rb +++ b/spec/models/form/sales/questions/equity_spec.rb @@ -5,7 +5,7 @@ RSpec.describe Form::Sales::Questions::Equity, type: :model do let(:question_id) { nil } let(:question_definition) { nil } - let(:page) { instance_double(Form::Page, id: "initial_equity", subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1)))) } + let(:page) { instance_double(Form::Page, id: "initial_equity", subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1)), id: "shared_ownership")) } before do allow(page.subsection.form).to receive(:start_year_2025_or_later?).and_return(false) diff --git a/spec/models/form/sales/questions/has_leasehold_charges_spec.rb b/spec/models/form/sales/questions/has_leasehold_charges_spec.rb index ea5c090a0..9d518dfdc 100644 --- a/spec/models/form/sales/questions/has_leasehold_charges_spec.rb +++ b/spec/models/form/sales/questions/has_leasehold_charges_spec.rb @@ -3,9 +3,10 @@ require "rails_helper" RSpec.describe Form::Sales::Questions::HasLeaseholdCharges, type: :model do subject(:question) { described_class.new(question_id, question_definition, page, ownershipsch: 1) } + let(:form) { instance_double(Form, start_date: Time.zone.local(2025, 4, 4)) } let(:question_id) { nil } let(:question_definition) { nil } - let(:page) { instance_double(Form::Page) } + let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, id: "shared_ownership", form:)) } it "has correct page" do expect(question.page).to eq(page) diff --git a/spec/models/form/sales/questions/mortgageused_spec.rb b/spec/models/form/sales/questions/mortgageused_spec.rb index 971eb2909..9959aa48b 100644 --- a/spec/models/form/sales/questions/mortgageused_spec.rb +++ b/spec/models/form/sales/questions/mortgageused_spec.rb @@ -12,7 +12,7 @@ RSpec.describe Form::Sales::Questions::Mortgageused, type: :model do context "when the form start year is 2024" do let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) } - let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form:)) } + let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form:, id: "shared_ownership")) } let(:saledate) { Time.zone.local(2024, 5, 1) } let(:ownershipsch) { 1 } @@ -94,7 +94,7 @@ RSpec.describe Form::Sales::Questions::Mortgageused, type: :model do context "when the form start year is 2025" do let(:form) { instance_double(Form, start_date: Time.zone.local(2025, 4, 1)) } - let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form:)) } + let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form:, id: "shared_ownership")) } let(:saledate) { Time.zone.local(2025, 5, 1) } before do @@ -106,7 +106,7 @@ RSpec.describe Form::Sales::Questions::Mortgageused, type: :model do let(:ownershipsch) { 2 } it "shows the correct question number" do - expect(question.question_number).to eq 104 + expect(question.question_number).to eq 106 end it "does not show the don't know option" do diff --git a/spec/models/form/sales/questions/value_spec.rb b/spec/models/form/sales/questions/value_spec.rb index 10f281e63..bed4c7f96 100644 --- a/spec/models/form/sales/questions/value_spec.rb +++ b/spec/models/form/sales/questions/value_spec.rb @@ -5,7 +5,7 @@ RSpec.describe Form::Sales::Questions::Value, type: :model do let(:question_id) { nil } let(:question_definition) { nil } - let(:page) { instance_double(Form::Page, id: "value_shared_ownership", subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1)))) } + let(:page) { instance_double(Form::Page, id: "value_shared_ownership", subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1)), id: "shared_ownership")) } before do allow(page.subsection.form).to receive(:start_year_2025_or_later?).and_return(false) diff --git a/spec/services/bulk_upload/sales/validator_spec.rb b/spec/services/bulk_upload/sales/validator_spec.rb index 968014e7c..71a94a725 100644 --- a/spec/services/bulk_upload/sales/validator_spec.rb +++ b/spec/services/bulk_upload/sales/validator_spec.rb @@ -47,8 +47,8 @@ RSpec.describe BulkUpload::Sales::Validator do let(:log) { build(:sales_log, :completed, saledate: Time.zone.local(2023, 10, 10), assigned_to: user) } before do - file.write(log_to_csv.default_2024_field_numbers_row) - file.write(log_to_csv.to_2024_csv_row) + file.write(log_to_csv.default_field_numbers_row_for_year(2024)) + file.write(log_to_csv.to_year_csv_row(2024)) file.rewind end diff --git a/spec/services/bulk_upload/sales/year2023/csv_parser_spec.rb b/spec/services/bulk_upload/sales/year2023/csv_parser_spec.rb index 6738eb3f3..794cce0e3 100644 --- a/spec/services/bulk_upload/sales/year2023/csv_parser_spec.rb +++ b/spec/services/bulk_upload/sales/year2023/csv_parser_spec.rb @@ -15,8 +15,8 @@ RSpec.describe BulkUpload::Sales::Year2023::CsvParser do file.write("Can be empty?\n") file.write("Type of letting the question applies to\n") file.write("Duplicate check field?\n") - file.write(BulkUpload::SalesLogToCsv.new(log:).default_2023_field_numbers_row) - file.write(BulkUpload::SalesLogToCsv.new(log:).to_2023_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:).default_field_numbers_row_for_year(2023)) + file.write(BulkUpload::SalesLogToCsv.new(log:).to_year_csv_row(2023)) file.rewind end @@ -44,8 +44,8 @@ RSpec.describe BulkUpload::Sales::Year2023::CsvParser do file.write("Can be empty?\n") file.write("Type of letting the question applies to\n") file.write("Duplicate check field?\n") - file.write(BulkUpload::SalesLogToCsv.new(log:).default_2023_field_numbers_row(seed:)) - file.write(BulkUpload::SalesLogToCsv.new(log:).to_2023_csv_row(seed:)) + file.write(BulkUpload::SalesLogToCsv.new(log:).default_field_numbers_row_for_year(2023, seed:)) + file.write(BulkUpload::SalesLogToCsv.new(log:).to_year_csv_row(2023, seed:)) file.rewind end @@ -65,7 +65,7 @@ RSpec.describe BulkUpload::Sales::Year2023::CsvParser do let(:log) { build(:sales_log, :completed, :with_uprn) } before do - file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_2023_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_year_csv_row(2023)) file.rewind end @@ -87,7 +87,7 @@ RSpec.describe BulkUpload::Sales::Year2023::CsvParser do before do file.write(bom) - file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_2023_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_year_csv_row(2023)) file.close end @@ -104,7 +104,7 @@ RSpec.describe BulkUpload::Sales::Year2023::CsvParser do before do file.write(invalid_sequence) - file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_2023_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_year_csv_row(2023)) file.close end @@ -122,8 +122,8 @@ RSpec.describe BulkUpload::Sales::Year2023::CsvParser do file.write("Can be empty?\n") file.write("Type of letting the question applies to\n") file.write("Duplicate check field?\n") - file.write(BulkUpload::SalesLogToCsv.new(log:).default_2023_field_numbers_row) - file.write(BulkUpload::SalesLogToCsv.new(log:).to_2023_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:).default_field_numbers_row_for_year(2023)) + file.write(BulkUpload::SalesLogToCsv.new(log:).to_year_csv_row(2023)) file.rewind end @@ -139,7 +139,7 @@ RSpec.describe BulkUpload::Sales::Year2023::CsvParser do let(:log) { build(:sales_log, :completed, :with_uprn) } before do - file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_2023_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_year_csv_row(2023)) file.rewind end @@ -158,8 +158,8 @@ RSpec.describe BulkUpload::Sales::Year2023::CsvParser do file.write("Can be empty?\r") file.write("Type of letting the question applies to\r\n") file.write("Duplicate check field?\r") - file.write(BulkUpload::SalesLogToCsv.new(log:).default_2023_field_numbers_row) - file.write(BulkUpload::SalesLogToCsv.new(log:).to_2023_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:).default_field_numbers_row_for_year(2023)) + file.write(BulkUpload::SalesLogToCsv.new(log:).to_year_csv_row(2023)) file.rewind end diff --git a/spec/services/bulk_upload/sales/year2024/csv_parser_spec.rb b/spec/services/bulk_upload/sales/year2024/csv_parser_spec.rb index 5f9f003d0..49f48f607 100644 --- a/spec/services/bulk_upload/sales/year2024/csv_parser_spec.rb +++ b/spec/services/bulk_upload/sales/year2024/csv_parser_spec.rb @@ -15,8 +15,8 @@ RSpec.describe BulkUpload::Sales::Year2024::CsvParser do file.write("Can be empty?\n") file.write("Type of letting the question applies to\n") file.write("Duplicate check field?\n") - file.write(BulkUpload::SalesLogToCsv.new(log:).default_2024_field_numbers_row) - file.write(BulkUpload::SalesLogToCsv.new(log:).to_2024_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:).default_field_numbers_row_for_year(2024)) + file.write(BulkUpload::SalesLogToCsv.new(log:).to_year_csv_row(2024)) file.write("\n") file.rewind end @@ -47,8 +47,8 @@ RSpec.describe BulkUpload::Sales::Year2024::CsvParser do file.write("\n") file.write("Type of letting the question applies to\n") file.write("Duplicate check field?\n") - file.write(BulkUpload::SalesLogToCsv.new(log:).default_2024_field_numbers_row) - file.write(BulkUpload::SalesLogToCsv.new(log:).to_2024_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:).default_field_numbers_row_for_year(2024)) + file.write(BulkUpload::SalesLogToCsv.new(log:).to_year_csv_row(2024)) file.write("\n") file.rewind end @@ -81,8 +81,8 @@ RSpec.describe BulkUpload::Sales::Year2024::CsvParser do file.write("Can be empty?\n") file.write("Type of letting the question applies to\n") file.write("Duplicate check field?\n") - file.write(BulkUpload::SalesLogToCsv.new(log:).default_2024_field_numbers_row(seed:)) - file.write(BulkUpload::SalesLogToCsv.new(log:).to_2024_csv_row(seed:)) + file.write(BulkUpload::SalesLogToCsv.new(log:).default_field_numbers_row_for_year(2024, seed:)) + file.write(BulkUpload::SalesLogToCsv.new(log:).to_year_csv_row(2024, seed:)) file.rewind end @@ -102,7 +102,7 @@ RSpec.describe BulkUpload::Sales::Year2024::CsvParser do let(:log) { build(:sales_log, :completed, :with_uprn) } before do - file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_2024_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_year_csv_row(2024)) file.rewind end @@ -124,7 +124,7 @@ RSpec.describe BulkUpload::Sales::Year2024::CsvParser do before do file.write(bom) - file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_2024_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_year_csv_row(2024)) file.close end @@ -141,7 +141,7 @@ RSpec.describe BulkUpload::Sales::Year2024::CsvParser do before do file.write(invalid_sequence) - file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_2024_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:, col_offset: 0).to_year_csv_row(2024)) file.close end @@ -159,8 +159,8 @@ RSpec.describe BulkUpload::Sales::Year2024::CsvParser do file.write("Can be empty?\n") file.write("Type of letting the question applies to\n") file.write("Duplicate check field?\n") - file.write(BulkUpload::SalesLogToCsv.new(log:).default_2024_field_numbers_row) - file.write(BulkUpload::SalesLogToCsv.new(log:).to_2024_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:).default_field_numbers_row_for_year(2024)) + file.write(BulkUpload::SalesLogToCsv.new(log:).to_year_csv_row(2024)) file.rewind end @@ -179,8 +179,8 @@ RSpec.describe BulkUpload::Sales::Year2024::CsvParser do file.write("Can be empty?\r") file.write("Type of letting the question applies to\r\n") file.write("Duplicate check field?\r") - file.write(BulkUpload::SalesLogToCsv.new(log:).default_2024_field_numbers_row) - file.write(BulkUpload::SalesLogToCsv.new(log:).to_2024_csv_row) + file.write(BulkUpload::SalesLogToCsv.new(log:).default_field_numbers_row_for_year(2024)) + file.write(BulkUpload::SalesLogToCsv.new(log:).to_year_csv_row(2024)) file.rewind end