diff --git a/app/views/bulk_upload_sales_soft_validations_check/confirm_soft_errors.html.erb b/app/views/bulk_upload_sales_soft_validations_check/confirm_soft_errors.html.erb
index 4a2765ab4..0bf5553b3 100644
--- a/app/views/bulk_upload_sales_soft_validations_check/confirm_soft_errors.html.erb
+++ b/app/views/bulk_upload_sales_soft_validations_check/confirm_soft_errors.html.erb
@@ -3,7 +3,7 @@
<%= f.govuk_error_summary %>
-
Bulk upload for sales (<%= @bulk_upload.year_combo %>)
+
Upload sales logs in bulk (<%= @bulk_upload.year_combo %>)
Check these <%= pluralize(@bulk_upload.bulk_upload_errors.count, "answer") %>
Some data from your bulk upload might not be right. Check your file for any errors in the fields below.
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 53154eab2..afa157034 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -290,9 +290,9 @@ en:
startdate:
current_collection_year:
- "Enter a date within the %{current_start_year_short}/%{current_end_year_short} collection year, which is between %{current_start_year_long} and %{current_end_year_long}."
+ "Enter a date within the %{current_start_year_short} to %{current_end_year_short} collection year, which is between %{current_start_year_long} and %{current_end_year_long}."
previous_and_current_collection_year:
- "Enter a date within the %{previous_start_year_short}/%{previous_end_year_short} or %{previous_end_year_short}/%{current_end_year_short} collection years, which is between %{previous_start_year_long} and %{current_end_year_long}."
+ "Enter a date within the %{previous_start_year_short} to %{previous_end_year_short} or %{previous_end_year_short} to %{current_end_year_short} collection years, which is between %{previous_start_year_long} and %{current_end_year_long}."
later_than_14_days_after: "The tenancy start date must not be later than 14 days from today’s date."
before_scheme_end_date: "The tenancy start date must be before the end date for this supported housing scheme."
after_void_date: "Enter a tenancy start date that is after the void date."
diff --git a/config/locales/validations/sales/setup.en.yml b/config/locales/validations/sales/setup.en.yml
index 2741464b0..9dd13b525 100644
--- a/config/locales/validations/sales/setup.en.yml
+++ b/config/locales/validations/sales/setup.en.yml
@@ -7,9 +7,9 @@ en:
next_two_weeks: "Sale completion date must not be later than 14 days from today’s date."
must_be_within:
current_collection_year:
- "Enter a date within the %{current_start_year_short}/%{current_end_year_short} collection year, which is between %{current_start_year_long} and %{current_end_year_long}."
+ "Enter a date within the %{current_start_year_short} to %{current_end_year_short} collection year, which is between %{current_start_year_long} and %{current_end_year_long}."
previous_and_current_collection_year:
- "Enter a date within the %{previous_start_year_short}/%{previous_end_year_short} or %{previous_end_year_short}/%{current_end_year_short} collection years, which is between %{previous_start_year_long} and %{current_end_year_long}."
+ "Enter a date within the %{previous_start_year_short} to %{previous_end_year_short} or %{previous_end_year_short} to %{current_end_year_short} collection years, which is between %{previous_start_year_long} and %{current_end_year_long}."
invalid:
merged_organisations:
"Enter a date when the owning organisation was active. %{owning_organisation} became inactive on %{merge_date} and was replaced by %{absorbing_organisation}."
diff --git a/spec/components/bulk_upload_summary_component_spec.rb b/spec/components/bulk_upload_summary_component_spec.rb
index 9c0c68731..544befcb3 100644
--- a/spec/components/bulk_upload_summary_component_spec.rb
+++ b/spec/components/bulk_upload_summary_component_spec.rb
@@ -12,7 +12,7 @@ RSpec.describe BulkUploadSummaryComponent, type: :component do
it "shows the collection year" do
result = render_inline(described_class.new(bulk_upload:))
- expect(result).to have_content("2024/2025")
+ expect(result).to have_content("2024 to 2025")
end
it "includes a download file link" do
diff --git a/spec/features/bulk_upload_lettings_logs_spec.rb b/spec/features/bulk_upload_lettings_logs_spec.rb
index 5d48d9ee0..315e1461e 100644
--- a/spec/features/bulk_upload_lettings_logs_spec.rb
+++ b/spec/features/bulk_upload_lettings_logs_spec.rb
@@ -5,8 +5,7 @@ RSpec.describe "Bulk upload lettings log" do
let(:user) { create(:user) }
let(:current_year) { current_collection_start_year }
- let(:current_formatted_year) { "#{current_year}/#{current_year + 1}" }
- let(:current_formatted_short_year) { "#{current_year}/#{current_year - 2000 + 1}" }
+ let(:current_formatted_year) { "#{current_year} to #{current_year + 1}" }
let(:stub_file_upload) do
vcap_services = { "aws-s3-bucket" => {} }
@@ -47,12 +46,12 @@ RSpec.describe "Bulk upload lettings log" do
expect(page.find_field("form-year-#{current_year}-field")).to be_checked
click_button("Continue")
- expect(page).to have_content("Upload lettings logs in bulk (#{current_formatted_short_year})")
+ expect(page).to have_content("Upload lettings logs in bulk (#{current_formatted_year})")
click_button("Continue")
expect(page).not_to have_content("What is the needs type?")
- expect(page).to have_content("Upload lettings logs in bulk (#{current_formatted_short_year})")
+ expect(page).to have_content("Upload lettings logs in bulk (#{current_formatted_year})")
expect(page).to have_content("Upload your file")
click_button("Upload")
@@ -88,7 +87,7 @@ RSpec.describe "Bulk upload lettings log" do
expect(page).to have_link("Upload lettings logs in bulk")
click_link("Upload lettings logs in bulk")
- expect(page).to have_content("Upload lettings logs in bulk (#{current_formatted_short_year})")
+ expect(page).to have_content("Upload lettings logs in bulk (#{current_formatted_year})")
click_button("Continue")
expect(page).to have_content("Upload your file")
@@ -107,7 +106,7 @@ RSpec.describe "Bulk upload lettings log" do
expect(page).to have_content("Prepare your file")
click_button("Continue")
- expect(page).to have_content("Upload lettings logs in bulk (#{current_formatted_short_year})")
+ expect(page).to have_content("Upload lettings logs in bulk (#{current_formatted_year})")
expect(page).to have_content("Upload your file")
click_button("Upload")
diff --git a/spec/features/bulk_upload_sales_logs_spec.rb b/spec/features/bulk_upload_sales_logs_spec.rb
index e47273cdc..b7098999d 100644
--- a/spec/features/bulk_upload_sales_logs_spec.rb
+++ b/spec/features/bulk_upload_sales_logs_spec.rb
@@ -38,7 +38,7 @@ RSpec.describe "Bulk upload sales log" do
click_button("Continue")
expect(page).to have_content("You must select a collection period to upload for")
- choose("2023/2024")
+ choose("2023 to 2024")
click_button("Continue")
click_link("Back")
@@ -46,7 +46,7 @@ RSpec.describe "Bulk upload sales log" do
expect(page.find_field("form-year-2023-field")).to be_checked
click_button("Continue")
- expect(page).to have_content("Upload sales logs in bulk (2023/24)")
+ expect(page).to have_content("Upload sales logs in bulk (2023 to 2024)")
click_button("Continue")
expect(page).to have_content("Upload your file")
@@ -88,7 +88,7 @@ RSpec.describe "Bulk upload sales log" do
expect(page).to have_link("Upload sales logs in bulk")
click_link("Upload sales logs in bulk")
- expect(page).to have_content("Upload sales logs in bulk (2023/24)")
+ expect(page).to have_content("Upload sales logs in bulk (2023 to 2024)")
click_button("Continue")
expect(page).to have_content("Upload your file")
diff --git a/spec/features/sales_log_spec.rb b/spec/features/sales_log_spec.rb
index 8e4ffba42..ceff00f94 100644
--- a/spec/features/sales_log_spec.rb
+++ b/spec/features/sales_log_spec.rb
@@ -191,7 +191,7 @@ RSpec.describe "Sales Log Features" do
context "when one year filter is selected" do
before do
- check("2024")
+ check("2024 to 2025")
click_button("Apply filters")
end
diff --git a/spec/helpers/filters_helper_spec.rb b/spec/helpers/filters_helper_spec.rb
index 58c82f0c9..b709a16ac 100644
--- a/spec/helpers/filters_helper_spec.rb
+++ b/spec/helpers/filters_helper_spec.rb
@@ -491,7 +491,7 @@ RSpec.describe FiltersHelper do
it "has the correct options" do
expect(collection_year_options).to eq(
{
- "2023" => "2023/24", "2022" => "2022/23", "2021" => "2021/22"
+ "2023" => "2023 to 2024", "2022" => "2022 to 2023", "2021" => "2021 to 2022"
},
)
end
@@ -505,7 +505,7 @@ RSpec.describe FiltersHelper do
it "has the correct options" do
expect(collection_year_options).to eq(
{
- "2023" => "2023/24", "2022" => "2022/23"
+ "2023" => "2023 to 2024", "2022" => "2022 to 2023"
},
)
end
@@ -520,7 +520,7 @@ RSpec.describe FiltersHelper do
it "has the correct options" do
expect(collection_year_options).to eq(
{
- "2024" => "2024/25", "2023" => "2023/24", "2022" => "2022/23"
+ "2024" => "2024 to 2025", "2023" => "2023 to 2024", "2022" => "2022 to 2023"
},
)
end
@@ -541,7 +541,7 @@ RSpec.describe FiltersHelper do
it "has the correct options" do
expect(collection_year_radio_options).to eq(
{
- "2023" => { label: "2023/24" }, "2022" => { label: "2022/23" }, "2021" => { label: "2021/22" }
+ "2023" => { label: "2023 to 2024" }, "2022" => { label: "2022 to 2023" }, "2021" => { label: "2021 to 2022" }
},
)
end
@@ -555,7 +555,7 @@ RSpec.describe FiltersHelper do
it "has the correct options" do
expect(collection_year_radio_options).to eq(
{
- "2023" => { label: "2023/24" }, "2022" => { label: "2022/23" }
+ "2023" => { label: "2023 to 2024" }, "2022" => { label: "2022 to 2023" }
},
)
end
@@ -570,7 +570,7 @@ RSpec.describe FiltersHelper do
it "has the correct options" do
expect(collection_year_radio_options).to eq(
{
- "2024" => { label: "2024/25" }, "2023" => { label: "2023/24" }, "2022" => { label: "2022/23" }
+ "2024" => { label: "2024 to 2025" }, "2023" => { label: "2023 to 2024" }, "2022" => { label: "2022 to 2023" }
},
)
end
diff --git a/spec/helpers/tasklist_helper_spec.rb b/spec/helpers/tasklist_helper_spec.rb
index 5d3bd4f91..c5e1bd784 100644
--- a/spec/helpers/tasklist_helper_spec.rb
+++ b/spec/helpers/tasklist_helper_spec.rb
@@ -143,7 +143,7 @@ RSpec.describe TasklistHelper do
end
it "returns relevant text" do
- expect(review_log_text(sales_log)).to eq("This log is from the 2022/2023 collection window, which is now closed.")
+ expect(review_log_text(sales_log)).to eq("This log is from the 2022 to 2023 collection window, which is now closed.")
end
end
@@ -156,7 +156,7 @@ RSpec.describe TasklistHelper do
end
it "returns relevant text" do
- expect(review_log_text(sales_log)).to eq("This log is from the 2021/2022 collection window, which is now closed.")
+ expect(review_log_text(sales_log)).to eq("This log is from the 2021 to 2022 collection window, which is now closed.")
end
end
end
@@ -186,7 +186,7 @@ RSpec.describe TasklistHelper do
end
it "returns relevant text" do
- expect(review_log_text(lettings_log)).to eq("This log is from the 2022/2023 collection window, which is now closed.")
+ expect(review_log_text(lettings_log)).to eq("This log is from the 2022 to 2023 collection window, which is now closed.")
end
end
@@ -199,7 +199,7 @@ RSpec.describe TasklistHelper do
end
it "returns relevant text" do
- expect(review_log_text(lettings_log)).to eq("This log is from the 2021/2022 collection window, which is now closed.")
+ expect(review_log_text(lettings_log)).to eq("This log is from the 2021 to 2022 collection window, which is now closed.")
end
end
end
diff --git a/spec/models/bulk_upload_spec.rb b/spec/models/bulk_upload_spec.rb
index af2547d7a..db475709a 100644
--- a/spec/models/bulk_upload_spec.rb
+++ b/spec/models/bulk_upload_spec.rb
@@ -39,8 +39,8 @@ RSpec.describe BulkUpload, type: :model do
describe "year_combo" do
[
- { year: 2023, expected_value: "2023/24" },
- { year: 2024, expected_value: "2024/25" },
+ { year: 2023, expected_value: "2023 to 2024" },
+ { year: 2024, expected_value: "2024 to 2025" },
].each do |test_case|
context "when the bulk upload year is #{test_case[:year]}" do
let(:bulk_upload) { build(:bulk_upload, year: test_case[:year]) }
diff --git a/spec/models/forms/bulk_upload_lettings/year_spec.rb b/spec/models/forms/bulk_upload_lettings/year_spec.rb
index 70d6af4bf..c4429b98b 100644
--- a/spec/models/forms/bulk_upload_lettings/year_spec.rb
+++ b/spec/models/forms/bulk_upload_lettings/year_spec.rb
@@ -17,7 +17,7 @@ RSpec.describe Forms::BulkUploadLettings::Year do
it "returns current and previous years" do
expect(form.options.map(&:id)).to eql([2024, 2023])
- expect(form.options.map(&:name)).to eql(%w[2024/2025 2023/2024])
+ expect(form.options.map(&:name)).to eql(["2024 to 2025", "2023 to 2024"])
end
end
@@ -28,7 +28,7 @@ RSpec.describe Forms::BulkUploadLettings::Year do
it "returns the current year" do
expect(form.options.map(&:id)).to eql([2024])
- expect(form.options.map(&:name)).to eql(%w[2024/2025])
+ expect(form.options.map(&:name)).to eql(["2024 to 2025"])
end
end
@@ -40,7 +40,7 @@ RSpec.describe Forms::BulkUploadLettings::Year do
it "returns current and next years" do
expect(form.options.map(&:id)).to eql([2024, 2025])
- expect(form.options.map(&:name)).to eql(%w[2024/2025 2025/2026])
+ expect(form.options.map(&:name)).to eql(["2024 to 2025", "2025 to 2026"])
end
end
end
diff --git a/spec/models/forms/bulk_upload_sales/year_spec.rb b/spec/models/forms/bulk_upload_sales/year_spec.rb
index 2cfa8babc..b1b22bb8d 100644
--- a/spec/models/forms/bulk_upload_sales/year_spec.rb
+++ b/spec/models/forms/bulk_upload_sales/year_spec.rb
@@ -17,7 +17,7 @@ RSpec.describe Forms::BulkUploadSales::Year do
it "returns current and previous years" do
expect(form.options.map(&:id)).to eql([2024, 2023])
- expect(form.options.map(&:name)).to eql(%w[2024/2025 2023/2024])
+ expect(form.options.map(&:name)).to eql(["2024 to 2025", "2023 to 2024"])
end
end
@@ -28,7 +28,7 @@ RSpec.describe Forms::BulkUploadSales::Year do
it "returns the current year" do
expect(form.options.map(&:id)).to eql([2024])
- expect(form.options.map(&:name)).to eql(%w[2024/2025])
+ expect(form.options.map(&:name)).to eql(["2024 to 2025"])
end
end
@@ -44,7 +44,7 @@ RSpec.describe Forms::BulkUploadSales::Year do
it "returns current and next years" do
expect(form.options.map(&:id)).to eql([2024, 2025])
- expect(form.options.map(&:name)).to eql(%w[2024/2025 2025/2026])
+ expect(form.options.map(&:name)).to eql(["2024 to 2025", "2025 to 2026"])
end
end
end
diff --git a/spec/models/validations/sales/setup_validations_spec.rb b/spec/models/validations/sales/setup_validations_spec.rb
index 797b0c22c..659cde23f 100644
--- a/spec/models/validations/sales/setup_validations_spec.rb
+++ b/spec/models/validations/sales/setup_validations_spec.rb
@@ -37,7 +37,7 @@ RSpec.describe Validations::Sales::SetupValidations do
it "adds error" do
setup_validator.validate_saledate_collection_year(record)
- expect(record.errors[:saledate]).to include(/Enter a date within the \d{2}\/\d{2} collection year, which is between 1st April \d{4} and 31st March \d{4}/)
+ expect(record.errors[:saledate]).to include(/Enter a date within the \d{4} to \d{4} collection year, which is between 1st April \d{4} and 31st March \d{4}/)
end
end
@@ -47,7 +47,7 @@ RSpec.describe Validations::Sales::SetupValidations do
it "adds error" do
setup_validator.validate_saledate_collection_year(record)
- expect(record.errors[:saledate]).to include(/Enter a date within the \d{2}\/\d{2} collection year, which is between 1st April \d{4} and 31st March \d{4}/)
+ expect(record.errors[:saledate]).to include(/Enter a date within the \d{4} to \d{4} collection year, which is between 1st April \d{4} and 31st March \d{4}/)
end
end
end
@@ -91,7 +91,7 @@ RSpec.describe Validations::Sales::SetupValidations do
it "adds error" do
setup_validator.validate_saledate_collection_year(record)
- expect(record.errors[:saledate]).to include("Enter a date within the 23/24 or 24/25 collection years, which is between 1st April 2023 and 31st March 2025.")
+ expect(record.errors[:saledate]).to include("Enter a date within the 2023 to 2024 or 2024 to 2025 collection years, which is between 1st April 2023 and 31st March 2025.")
end
end
@@ -105,7 +105,7 @@ RSpec.describe Validations::Sales::SetupValidations do
it "adds error" do
setup_validator.validate_saledate_collection_year(record)
- expect(record.errors[:saledate]).to include("Enter a date within the 23/24 or 24/25 collection years, which is between 1st April 2023 and 31st March 2025.")
+ expect(record.errors[:saledate]).to include("Enter a date within the 2023 to 2024 or 2024 to 2025 collection years, which is between 1st April 2023 and 31st March 2025.")
end
end
@@ -119,7 +119,7 @@ RSpec.describe Validations::Sales::SetupValidations do
it "cannot create new logs for the archived collection year" do
record.saledate = Time.zone.local(2023, 1, 1)
setup_validator.validate_saledate_collection_year(record)
- expect(record.errors["saledate"]).to include(match "Enter a date within the 23/24 or 24/25 collection years, which is between 1st April 2023 and 31st March 2025.")
+ expect(record.errors["saledate"]).to include(match "Enter a date within the 2023 to 2024 or 2024 to 2025 collection years, which is between 1st April 2023 and 31st March 2025.")
end
it "can edit already created logs for the previous collection year" do
@@ -127,7 +127,7 @@ RSpec.describe Validations::Sales::SetupValidations do
record.save!(validate: false)
record.saledate = Time.zone.local(2024, 1, 1)
setup_validator.validate_saledate_collection_year(record)
- expect(record.errors["saledate"]).not_to include(match "Enter a date within the 24/25 collection year, which is between 1st April 2024 and 31st March 2025.")
+ expect(record.errors["saledate"]).not_to include(match "Enter a date within the 2024 to 2025 collection year, which is between 1st April 2024 and 31st March 2025.")
end
end
@@ -142,7 +142,7 @@ RSpec.describe Validations::Sales::SetupValidations do
record.update!(saledate: nil)
record.saledate = Time.zone.local(2023, 1, 1)
setup_validator.validate_saledate_collection_year(record)
- expect(record.errors["saledate"]).to include(match "Enter a date within the 23/24 or 24/25 collection years, which is between 1st April 2023 and 31st March 2025.")
+ expect(record.errors["saledate"]).to include(match "Enter a date within the 2023 to 2024 or 2024 to 2025 collection years, which is between 1st April 2023 and 31st March 2025.")
end
it "cannot edit already created logs for the archived collection year" do
@@ -150,7 +150,7 @@ RSpec.describe Validations::Sales::SetupValidations do
record.save!(validate: false)
record.saledate = Time.zone.local(2023, 1, 1)
setup_validator.validate_saledate_collection_year(record)
- expect(record.errors["saledate"]).to include(match "Enter a date within the 23/24 or 24/25 collection years, which is between 1st April 2023 and 31st March 2025.")
+ expect(record.errors["saledate"]).to include(match "Enter a date within the 2023 to 2024 or 2024 to 2025 collection years, which is between 1st April 2023 and 31st March 2025.")
end
end
end
diff --git a/spec/models/validations/setup_validations_spec.rb b/spec/models/validations/setup_validations_spec.rb
index f39b71328..f1e306a89 100644
--- a/spec/models/validations/setup_validations_spec.rb
+++ b/spec/models/validations/setup_validations_spec.rb
@@ -7,7 +7,7 @@ RSpec.describe Validations::SetupValidations do
let(:record) { build(:lettings_log) }
describe "tenancy start date" do
- context "when in 22/23 collection" do
+ context "when in 2022 to 2023 collection" do
context "when in the crossover period" do
before do
allow(Time).to receive(:now).and_return(Time.zone.local(2022, 4, 1))
@@ -18,14 +18,14 @@ RSpec.describe Validations::SetupValidations do
record.startdate = Time.zone.local(2021, 1, 1)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).to include(match "Enter a date within the 21/22 or 22/23 collection years, which is between 1st April 2021 and 31st March 2023")
+ expect(record.errors["startdate"]).to include(match "Enter a date within the 2021 to 2022 or 2022 to 2023 collection years, which is between 1st April 2021 and 31st March 2023")
end
it "cannot be after the second collection window end date" do
record.startdate = Time.zone.local(2023, 7, 1, 6)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).to include(match "Enter a date within the 21/22 or 22/23 collection years, which is between 1st April 2021 and 31st March 2023")
+ expect(record.errors["startdate"]).to include(match "Enter a date within the 2021 to 2022 or 2022 to 2023 collection years, which is between 1st April 2021 and 31st March 2023")
end
end
@@ -39,19 +39,19 @@ RSpec.describe Validations::SetupValidations do
record.startdate = Time.zone.local(2022, 1, 1)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).to include(match "Enter a date within the 22/23 collection year, which is between 1st April 2022 and 31st March 2023")
+ expect(record.errors["startdate"]).to include(match "Enter a date within the 2022 to 2023 collection year, which is between 1st April 2022 and 31st March 2023")
end
it "cannot be after the second collection window end date" do
record.startdate = Time.zone.local(2023, 7, 1, 6)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).to include(match "Enter a date within the 22/23 collection year, which is between 1st April 2022 and 31st March 2023")
+ expect(record.errors["startdate"]).to include(match "Enter a date within the 2022 to 2023 collection year, which is between 1st April 2022 and 31st March 2023")
end
end
end
- context "when in 23/24 collection" do
+ context "when in 2023 to 2024 collection" do
context "when in the crossover period" do
before do
allow(Time).to receive(:now).and_return(Time.zone.local(2023, 4, 1))
@@ -62,14 +62,14 @@ RSpec.describe Validations::SetupValidations do
record.startdate = Time.zone.local(2022, 1, 1)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).to include(match "Enter a date within the 22/23 or 23/24 collection years, which is between 1st April 2022 and 31st March 2024")
+ expect(record.errors["startdate"]).to include(match "Enter a date within the 2022 to 2023 or 2023 to 2024 collection years, which is between 1st April 2022 and 31st March 2024")
end
it "cannot be after the second collection window end date" do
record.startdate = Time.zone.local(2024, 7, 1, 6)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).to include(match "Enter a date within the 22/23 or 23/24 collection years, which is between 1st April 2022 and 31st March 2024")
+ expect(record.errors["startdate"]).to include(match "Enter a date within the 2022 to 2023 or 2023 to 2024 collection years, which is between 1st April 2022 and 31st March 2024")
end
end
@@ -83,14 +83,14 @@ RSpec.describe Validations::SetupValidations do
record.startdate = Time.zone.local(2023, 1, 1)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).to include(match "Enter a date within the 23/24 collection year, which is between 1st April 2023 and 31st March 2024")
+ expect(record.errors["startdate"]).to include(match "Enter a date within the 2023 to 2024 collection year, which is between 1st April 2023 and 31st March 2024")
end
it "cannot be after the second collection window end date" do
record.startdate = Time.zone.local(2024, 7, 1, 6)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).to include(match "Enter a date within the 23/24 collection year, which is between 1st April 2023 and 31st March 2024")
+ expect(record.errors["startdate"]).to include(match "Enter a date within the 2023 to 2024 collection year, which is between 1st April 2023 and 31st March 2024")
end
end
@@ -104,7 +104,7 @@ RSpec.describe Validations::SetupValidations do
record.startdate = Time.zone.local(2023, 1, 1)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).to include(match "Enter a date within the 23/24 collection year, which is between 1st April 2023 and 31st March 2024")
+ expect(record.errors["startdate"]).to include(match "Enter a date within the 2023 to 2024 collection year, which is between 1st April 2023 and 31st March 2024")
end
xit "can edit already created logs for the previous collection year" do
@@ -113,7 +113,7 @@ RSpec.describe Validations::SetupValidations do
record.startdate = Time.zone.local(2023, 1, 1)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).not_to include(match "Enter a date within the 23/24 collection year, which is between 1st April 2023 and 31st March 2024")
+ expect(record.errors["startdate"]).not_to include(match "Enter a date within the 2023 to 2024 collection year, which is between 1st April 2023 and 31st March 2024")
end
end
@@ -127,7 +127,7 @@ RSpec.describe Validations::SetupValidations do
record.startdate = Time.zone.local(2023, 1, 1)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).to include(match "Enter a date within the 23/24 collection year, which is between 1st April 2023 and 31st March 2024")
+ expect(record.errors["startdate"]).to include(match "Enter a date within the 2023 to 2024 collection year, which is between 1st April 2023 and 31st March 2024")
end
it "cannot edit already created logs for the previous collection year" do
@@ -136,7 +136,7 @@ RSpec.describe Validations::SetupValidations do
record.startdate = Time.zone.local(2023, 1, 1)
setup_validator.validate_startdate_setup(record)
setup_validator.validate_merged_organisations_start_date(record)
- expect(record.errors["startdate"]).to include(match "Enter a date within the 23/24 collection year, which is between 1st April 2023 and 31st March 2024")
+ expect(record.errors["startdate"]).to include(match "Enter a date within the 2023 to 2024 collection year, which is between 1st April 2023 and 31st March 2024")
end
end
end
@@ -157,7 +157,7 @@ RSpec.describe Validations::SetupValidations do
record.startdate = Time.zone.local(2024, 4, 1)
setup_validator.validate_startdate_setup(record)
expect(record.errors["startdate"].length).to be >= 2
- expect(record.errors["startdate"][0]).to eq("Enter a date within the 23/24 collection year, which is between 1st April 2023 and 31st March 2024.")
+ expect(record.errors["startdate"][0]).to eq("Enter a date within the 2023 to 2024 collection year, which is between 1st April 2023 and 31st March 2024.")
expect(record.errors["startdate"][1]).to eq(I18n.t("validations.setup.startdate.later_than_14_days_after"))
end
end
diff --git a/spec/requests/bulk_upload_lettings_results_controller_spec.rb b/spec/requests/bulk_upload_lettings_results_controller_spec.rb
index dc78c9d78..afbd84df9 100644
--- a/spec/requests/bulk_upload_lettings_results_controller_spec.rb
+++ b/spec/requests/bulk_upload_lettings_results_controller_spec.rb
@@ -16,7 +16,7 @@ RSpec.describe BulkUploadLettingsResultsController, type: :request do
get "/lettings-logs/bulk-upload-results/#{bulk_upload.id}/summary"
expect(response).to be_successful
- expect(response.body).to include("Bulk upload for lettings (#{bulk_upload.year_combo})")
+ expect(response.body).to include("Upload lettings logs in bulk (#{bulk_upload.year_combo})")
end
it "renders the bulk upload filename" do
@@ -90,7 +90,7 @@ RSpec.describe BulkUploadLettingsResultsController, type: :request do
get "/lettings-logs/bulk-upload-results/#{bulk_upload.id}"
expect(response).to be_successful
- expect(response.body).to include("Bulk upload for lettings (#{bulk_upload.year_combo})")
+ expect(response.body).to include("Upload lettings logs in bulk (#{bulk_upload.year_combo})")
end
it "renders correct number of errors" do
diff --git a/spec/requests/bulk_upload_lettings_resume_controller_spec.rb b/spec/requests/bulk_upload_lettings_resume_controller_spec.rb
index f6ac9bb4a..8e3c0b0e0 100644
--- a/spec/requests/bulk_upload_lettings_resume_controller_spec.rb
+++ b/spec/requests/bulk_upload_lettings_resume_controller_spec.rb
@@ -60,7 +60,7 @@ RSpec.describe BulkUploadLettingsResumeController, type: :request do
expect(response).to be_successful
- expect(response.body).to include("Bulk upload for lettings")
+ expect(response.body).to include("Upload lettings logs in bulk")
expect(response.body).to include(bulk_upload.year_combo)
expect(response.body).to include("View the error report")
expect(response.body).to include("How would you like to fix the errors?")
@@ -120,7 +120,7 @@ RSpec.describe BulkUploadLettingsResumeController, type: :request do
expect(response).to be_successful
- expect(response.body).to include("Bulk upload for lettings")
+ expect(response.body).to include("Upload lettings logs in bulk")
expect(response.body).to include("Cancel")
end
end
@@ -218,7 +218,7 @@ RSpec.describe BulkUploadLettingsResumeController, type: :request do
expect(response).to be_successful
- expect(response.body).to include("Bulk upload for lettings")
+ expect(response.body).to include("Upload lettings logs in bulk")
expect(response.body).to include(bulk_upload.year_combo)
expect(response.body).to include("These 2 answers will be deleted if you upload the log")
expect(response.body).to include(bulk_upload.filename)
@@ -260,7 +260,7 @@ RSpec.describe BulkUploadLettingsResumeController, type: :request do
expect(response).to be_successful
- expect(response.body).to include("Bulk upload for lettings")
+ expect(response.body).to include("Upload lettings logs in bulk")
expect(response.body).to include(bulk_upload.year_combo)
expect(response.body).to include("These 2 answers will be deleted if you upload the log")
expect(response.body).to include(bulk_upload.filename)
diff --git a/spec/requests/bulk_upload_lettings_soft_validations_check_controller_spec.rb b/spec/requests/bulk_upload_lettings_soft_validations_check_controller_spec.rb
index e7fc9ed46..315235e0e 100644
--- a/spec/requests/bulk_upload_lettings_soft_validations_check_controller_spec.rb
+++ b/spec/requests/bulk_upload_lettings_soft_validations_check_controller_spec.rb
@@ -14,7 +14,7 @@ RSpec.describe BulkUploadLettingsSoftValidationsCheckController, type: :request
it "shows the soft validation errors with confirmation question" do
get "/lettings-logs/bulk-upload-soft-validations-check/#{bulk_upload.id}/confirm-soft-errors"
- expect(response.body).to include("Bulk upload for lettings")
+ expect(response.body).to include("Upload lettings logs in bulk")
expect(response.body).to include(bulk_upload.year_combo)
expect(response.body).to include("Check these 2 answers")
expect(response.body).to include(bulk_upload.filename)
diff --git a/spec/requests/bulk_upload_sales_results_controller_spec.rb b/spec/requests/bulk_upload_sales_results_controller_spec.rb
index 1bd171dec..b7bb7a10c 100644
--- a/spec/requests/bulk_upload_sales_results_controller_spec.rb
+++ b/spec/requests/bulk_upload_sales_results_controller_spec.rb
@@ -52,7 +52,7 @@ RSpec.describe BulkUploadSalesResultsController, type: :request do
get "/sales-logs/bulk-upload-results/#{bulk_upload.id}"
expect(response).to be_successful
- expect(response.body).to include("Bulk Upload for sales (#{bulk_upload.year_combo})")
+ expect(response.body).to include("Upload sales logs in bulk (#{bulk_upload.year_combo})")
end
it "renders correct number of errors" do
diff --git a/spec/requests/bulk_upload_sales_resume_controller_spec.rb b/spec/requests/bulk_upload_sales_resume_controller_spec.rb
index 9c0efded8..c6622afcb 100644
--- a/spec/requests/bulk_upload_sales_resume_controller_spec.rb
+++ b/spec/requests/bulk_upload_sales_resume_controller_spec.rb
@@ -60,7 +60,7 @@ RSpec.describe BulkUploadSalesResumeController, type: :request do
expect(response).to be_successful
- expect(response.body).to include("Bulk upload for sales")
+ expect(response.body).to include("Upload sales logs in bulk")
expect(response.body).to include(bulk_upload.year_combo)
expect(response.body).to include("View the error report")
expect(response.body).to include("How would you like to fix the errors?")
@@ -120,7 +120,7 @@ RSpec.describe BulkUploadSalesResumeController, type: :request do
expect(response).to be_successful
- expect(response.body).to include("Bulk upload for sales")
+ expect(response.body).to include("Upload sales logs in bulk")
expect(response.body).to include("Cancel")
end
end
@@ -218,7 +218,7 @@ RSpec.describe BulkUploadSalesResumeController, type: :request do
expect(response).to be_successful
- expect(response.body).to include("Bulk upload for sales")
+ expect(response.body).to include("Upload sales logs in bulk")
expect(response.body).to include(bulk_upload.year_combo)
expect(response.body).to include("These 2 answers will be deleted if you upload the log")
expect(response.body).to include(bulk_upload.filename)
@@ -260,7 +260,7 @@ RSpec.describe BulkUploadSalesResumeController, type: :request do
expect(response).to be_successful
- expect(response.body).to include("Bulk upload for sales")
+ expect(response.body).to include("Upload sales logs in bulk")
expect(response.body).to include(bulk_upload.year_combo)
expect(response.body).to include("These 2 answers will be deleted if you upload the log")
expect(response.body).to include(bulk_upload.filename)
diff --git a/spec/requests/bulk_upload_sales_soft_validations_check_controller_spec.rb b/spec/requests/bulk_upload_sales_soft_validations_check_controller_spec.rb
index f22ca0aa2..90e44a4f7 100644
--- a/spec/requests/bulk_upload_sales_soft_validations_check_controller_spec.rb
+++ b/spec/requests/bulk_upload_sales_soft_validations_check_controller_spec.rb
@@ -14,7 +14,7 @@ RSpec.describe BulkUploadSalesSoftValidationsCheckController, type: :request do
it "shows the soft validation errors with confirmation question" do
get "/sales-logs/bulk-upload-soft-validations-check/#{bulk_upload.id}/confirm-soft-errors"
- expect(response.body).to include("Bulk upload for sales")
+ expect(response.body).to include("Upload sales logs in bulk")
expect(response.body).to include(bulk_upload.year_combo)
expect(response.body).to include("Check these 2 answers")
expect(response.body).to include(bulk_upload.filename)
diff --git a/spec/requests/lettings_logs_controller_spec.rb b/spec/requests/lettings_logs_controller_spec.rb
index 3443a70ca..6af9f3f12 100644
--- a/spec/requests/lettings_logs_controller_spec.rb
+++ b/spec/requests/lettings_logs_controller_spec.rb
@@ -1202,7 +1202,7 @@ RSpec.describe LettingsLogsController, type: :request do
it "displays a closed collection window message for previous collection year logs" do
follow_redirect!
- expect(page).to have_content(/This log is from the \d{4}\/\d{4} collection window, which is now closed\./)
+ expect(page).to have_content(/This log is from the \d{4} to \d{4} collection window, which is now closed\./)
end
end
diff --git a/spec/requests/sales_logs_controller_spec.rb b/spec/requests/sales_logs_controller_spec.rb
index 607349a68..4c6ca3cc1 100644
--- a/spec/requests/sales_logs_controller_spec.rb
+++ b/spec/requests/sales_logs_controller_spec.rb
@@ -954,7 +954,7 @@ RSpec.describe SalesLogsController, type: :request do
expect(completed_sales_log.form.new_logs_end_date).to eq(Time.zone.local(2022, 12, 31))
expect(completed_sales_log.status).to eq("completed")
follow_redirect!
- expect(page).to have_content("This log is from the 2021/2022 collection window, which is now closed.")
+ expect(page).to have_content("This log is from the 2021 to 2022 collection window, which is now closed.")
end
end
end
From a39405346203e0d65bf49fe311689a6bfa8e03af Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Tue, 29 Oct 2024 09:26:54 +0000
Subject: [PATCH 5/7] Bump rexml from 3.3.6 to 3.3.9 in /docs (#2733)
Bumps [rexml](https://github.com/ruby/rexml) from 3.3.6 to 3.3.9.
- [Release notes](https://github.com/ruby/rexml/releases)
- [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/rexml/compare/v3.3.6...v3.3.9)
---
updated-dependencies:
- dependency-name: rexml
dependency-type: indirect
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
docs/Gemfile.lock | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock
index 8270007c8..f8962318e 100644
--- a/docs/Gemfile.lock
+++ b/docs/Gemfile.lock
@@ -226,8 +226,7 @@ GEM
rb-fsevent (0.11.2)
rb-inotify (0.10.1)
ffi (~> 1.0)
- rexml (3.3.6)
- strscan
+ rexml (3.3.9)
rouge (3.26.0)
ruby2_keywords (0.0.5)
rubyzip (2.3.2)
@@ -242,7 +241,6 @@ GEM
faraday (>= 0.17.3, < 3)
simpleidn (0.2.1)
unf (~> 0.1.4)
- strscan (3.1.0)
terminal-table (1.8.0)
unicode-display_width (~> 1.1, >= 1.1.1)
typhoeus (1.4.0)
From 5865c307b40cfb4b8c0d9c38290eb12f1cdc695d Mon Sep 17 00:00:00 2001
From: kosiakkatrina <54268893+kosiakkatrina@users.noreply.github.com>
Date: Tue, 29 Oct 2024 11:03:02 +0000
Subject: [PATCH 6/7] Update rexml (#2734)
---
Gemfile.lock | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/Gemfile.lock b/Gemfile.lock
index cc9e57d24..1a98463b5 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -377,8 +377,7 @@ GEM
responders (3.1.1)
actionpack (>= 5.2)
railties (>= 5.2)
- rexml (3.3.6)
- strscan
+ rexml (3.3.9)
roo (2.10.1)
nokogiri (~> 1)
rubyzip (>= 1.3.0, < 3.0.0)
@@ -463,7 +462,6 @@ GEM
smart_properties (1.17.0)
stimulus-rails (1.3.3)
railties (>= 6.0.0)
- strscan (3.1.0)
thor (1.3.2)
thread_safe (0.3.6)
timecop (0.9.8)
From 1ffc4403422607b4a5e9ceae8230f92ae008f738 Mon Sep 17 00:00:00 2001
From: kosiakkatrina <54268893+kosiakkatrina@users.noreply.github.com>
Date: Tue, 29 Oct 2024 12:20:31 +0000
Subject: [PATCH 7/7] CLDC-3656 Extract household characteristics question and
page copy to translation files (#2702)
* Extract question and page copy to translation files
* Refactor 2 question pages
* Readd removed answer options
* Fix missing/wrong age mappings
* Update some pages/questions
* Update tests
* CLDC-3656 Extract household characteristics soft validations (#2707)
* Extract retirement confirmation questions
* Extract old persons shared ownership confirmation questions
* Extract income confirmation questions
* Extract buyer live-in value check page and question copy to translation files
* Extract student not a child confirmation questions and page copy to translation files
* Extract partner under 16 value check page and question copy to translation files
* Extract partner under 16 value check page and question copy to translation files
* Update some missing/wrong keys
* Update some keys on 2023
* Update BU tests
---
app/models/form/sales/pages/age1.rb | 1 +
app/models/form/sales/pages/age2.rb | 1 +
.../pages/buyer1_ethnic_background_arab.rb | 1 +
.../pages/buyer1_ethnic_background_asian.rb | 1 +
.../pages/buyer1_ethnic_background_black.rb | 1 +
.../pages/buyer1_ethnic_background_mixed.rb | 1 +
.../pages/buyer1_ethnic_background_white.rb | 1 +
.../pages/buyer2_ethnic_background_arab.rb | 1 +
.../pages/buyer2_ethnic_background_asian.rb | 1 +
.../pages/buyer2_ethnic_background_black.rb | 1 +
.../pages/buyer2_ethnic_background_mixed.rb | 1 +
.../pages/buyer2_ethnic_background_white.rb | 1 +
.../pages/buyer2_relationship_to_buyer1.rb | 1 +
.../sales/pages/buyer2_working_situation.rb | 1 +
.../form/sales/pages/buyer_interview.rb | 2 +-
.../sales/pages/buyer_live_in_value_check.rb | 5 +-
.../form/sales/pages/gender_identity2.rb | 1 +
.../pages/multiple_partners_value_check.rb | 8 +-
.../sales/pages/not_retired_value_check.rb | 6 +-
...ld_persons_shared_ownership_value_check.rb | 5 +-
.../pages/partner_under_16_value_check.rb | 8 +-
app/models/form/sales/pages/person_age.rb | 1 +
.../sales/pages/person_gender_identity.rb | 1 +
.../pages/person_relationship_to_buyer_1.rb | 1 +
.../person_student_not_child_value_check.rb | 5 +-
.../sales/pages/person_working_situation.rb | 1 +
app/models/form/sales/pages/privacy_notice.rb | 2 +-
.../sales/pages/retirement_value_check.rb | 8 +-
app/models/form/sales/questions/age1.rb | 3 +-
app/models/form/sales/questions/age2.rb | 3 +-
.../form/sales/questions/buyer1_age_known.rb | 4 +-
.../buyer1_ethnic_background_arab.rb | 4 +-
.../buyer1_ethnic_background_asian.rb | 4 +-
.../buyer1_ethnic_background_black.rb | 4 +-
.../buyer1_ethnic_background_mixed.rb | 4 +-
.../buyer1_ethnic_background_white.rb | 4 +-
.../sales/questions/buyer1_ethnic_group.rb | 3 -
.../questions/buyer1_live_in_property.rb | 3 -
.../sales/questions/buyer1_nationality.rb | 3 -
.../questions/buyer1_working_situation.rb | 3 -
.../form/sales/questions/buyer2_age_known.rb | 3 +-
.../buyer2_ethnic_background_arab.rb | 3 +-
.../buyer2_ethnic_background_asian.rb | 3 +-
.../buyer2_ethnic_background_black.rb | 3 +-
.../buyer2_ethnic_background_mixed.rb | 3 +-
.../buyer2_ethnic_background_white.rb | 3 +-
.../sales/questions/buyer2_ethnic_group.rb | 2 -
.../questions/buyer2_live_in_property.rb | 2 -
.../sales/questions/buyer2_nationality.rb | 2 -
.../buyer2_relationship_to_buyer1.rb | 3 +-
.../questions/buyer2_working_situation.rb | 3 +-
.../form/sales/questions/buyer_interview.rb | 2 +-
.../questions/buyer_live_in_value_check.rb | 3 +-
.../form/sales/questions/gender_identity1.rb | 10 -
.../form/sales/questions/gender_identity2.rb | 9 +-
.../multiple_partners_value_check.rb | 3 +-
.../form/sales/questions/nationality_all.rb | 2 -
.../sales/questions/nationality_all_group.rb | 3 -
.../questions/not_retired_value_check.rb | 3 +-
.../questions/number_of_others_in_property.rb | 14 +-
...ld_persons_shared_ownership_value_check.rb | 3 +-
.../questions/partner_under_16_value_check.rb | 3 +-
app/models/form/sales/questions/person_age.rb | 9 +-
.../form/sales/questions/person_age_known.rb | 3 +-
.../sales/questions/person_gender_identity.rb | 9 +-
.../form/sales/questions/person_known.rb | 2 -
.../person_relationship_to_buyer_1.rb | 3 +-
.../person_student_not_child_value_check.rb | 3 +-
.../questions/person_working_situation.rb | 3 +-
.../form/sales/questions/privacy_notice.rb | 2 +-
.../sales/questions/retirement_value_check.rb | 3 +-
config/locales/en.yml | 17 -
.../sales/household_characteristics.en.yml | 357 ++++++++++++++++++
.../forms/2023/sales/soft_validations.en.yml | 66 +++-
.../sales/household_characteristics.en.yml | 345 +++++++++++++++++
.../forms/2024/sales/soft_validations.en.yml | 66 +++-
.../form/sales/pages/buyer_interview_spec.rb | 43 ++-
.../pages/buyer_live_in_value_check_spec.rb | 7 +-
.../multiple_partners_value_check_spec.rb | 11 +-
...rsons_shared_ownership_value_check_spec.rb | 9 +-
.../pages/partner_under16_value_check_spec.rb | 27 +-
...rson_student_not_child_value_check_spec.rb | 7 +-
.../form/sales/pages/privacy_notice_spec.rb | 37 +-
.../pages/retirement_value_check_spec.rb | 27 +-
.../sales/questions/buyer_interview_spec.rb | 37 +-
.../sales/questions/privacy_notice_spec.rb | 36 +-
.../sales/year2023/row_parser_spec.rb | 4 +-
.../sales/year2024/row_parser_spec.rb | 4 +-
88 files changed, 1080 insertions(+), 252 deletions(-)
create mode 100644 config/locales/forms/2023/sales/household_characteristics.en.yml
create mode 100644 config/locales/forms/2024/sales/household_characteristics.en.yml
diff --git a/app/models/form/sales/pages/age1.rb b/app/models/form/sales/pages/age1.rb
index caa0948ee..12fc8c4d2 100644
--- a/app/models/form/sales/pages/age1.rb
+++ b/app/models/form/sales/pages/age1.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Age1 < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_1_age"
+ @copy_key = "sales.household_characteristics.age1"
@depends_on = [
{
"buyer_has_seen_privacy_notice?" => true,
diff --git a/app/models/form/sales/pages/age2.rb b/app/models/form/sales/pages/age2.rb
index ee3bbc487..fb8d3953a 100644
--- a/app/models/form/sales/pages/age2.rb
+++ b/app/models/form/sales/pages/age2.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Age2 < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_2_age"
+ @copy_key = "sales.household_characteristics.age2.buyer"
@depends_on = [
{
"joint_purchase?" => true,
diff --git a/app/models/form/sales/pages/buyer1_ethnic_background_arab.rb b/app/models/form/sales/pages/buyer1_ethnic_background_arab.rb
index e0e74e129..ff603e1d6 100644
--- a/app/models/form/sales/pages/buyer1_ethnic_background_arab.rb
+++ b/app/models/form/sales/pages/buyer1_ethnic_background_arab.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer1EthnicBackgroundArab < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_1_ethnic_background_arab"
+ @copy_key = "sales.household_characteristics.ethnic.ethnic_background_arab"
@depends_on = [{
"ethnic_group" => 4,
}]
diff --git a/app/models/form/sales/pages/buyer1_ethnic_background_asian.rb b/app/models/form/sales/pages/buyer1_ethnic_background_asian.rb
index 599a48f91..5b865cd9b 100644
--- a/app/models/form/sales/pages/buyer1_ethnic_background_asian.rb
+++ b/app/models/form/sales/pages/buyer1_ethnic_background_asian.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer1EthnicBackgroundAsian < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_1_ethnic_background_asian"
+ @copy_key = "sales.household_characteristics.ethnic.ethnic_background_asian"
@depends_on = [{
"ethnic_group" => 2,
}]
diff --git a/app/models/form/sales/pages/buyer1_ethnic_background_black.rb b/app/models/form/sales/pages/buyer1_ethnic_background_black.rb
index 73e17d912..a54c4c54d 100644
--- a/app/models/form/sales/pages/buyer1_ethnic_background_black.rb
+++ b/app/models/form/sales/pages/buyer1_ethnic_background_black.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer1EthnicBackgroundBlack < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_1_ethnic_background_black"
+ @copy_key = "sales.household_characteristics.ethnic.ethnic_background_black"
@depends_on = [{
"ethnic_group" => 3,
}]
diff --git a/app/models/form/sales/pages/buyer1_ethnic_background_mixed.rb b/app/models/form/sales/pages/buyer1_ethnic_background_mixed.rb
index 13fea19a7..2b498e68f 100644
--- a/app/models/form/sales/pages/buyer1_ethnic_background_mixed.rb
+++ b/app/models/form/sales/pages/buyer1_ethnic_background_mixed.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer1EthnicBackgroundMixed < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_1_ethnic_background_mixed"
+ @copy_key = "sales.household_characteristics.ethnic.ethnic_background_mixed"
@depends_on = [{
"ethnic_group" => 1,
}]
diff --git a/app/models/form/sales/pages/buyer1_ethnic_background_white.rb b/app/models/form/sales/pages/buyer1_ethnic_background_white.rb
index 2e4bd3097..4553d5d36 100644
--- a/app/models/form/sales/pages/buyer1_ethnic_background_white.rb
+++ b/app/models/form/sales/pages/buyer1_ethnic_background_white.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer1EthnicBackgroundWhite < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_1_ethnic_background_white"
+ @copy_key = "sales.household_characteristics.ethnic.ethnic_background_white"
@depends_on = [{
"ethnic_group" => 0,
}]
diff --git a/app/models/form/sales/pages/buyer2_ethnic_background_arab.rb b/app/models/form/sales/pages/buyer2_ethnic_background_arab.rb
index 593e43ebc..370e07dcd 100644
--- a/app/models/form/sales/pages/buyer2_ethnic_background_arab.rb
+++ b/app/models/form/sales/pages/buyer2_ethnic_background_arab.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer2EthnicBackgroundArab < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_2_ethnic_background_arab"
+ @copy_key = "sales.household_characteristics.ethnicbuy2.ethnic_background_arab"
@depends_on = [{
"ethnic_group2" => 4,
}]
diff --git a/app/models/form/sales/pages/buyer2_ethnic_background_asian.rb b/app/models/form/sales/pages/buyer2_ethnic_background_asian.rb
index 98a36476e..0c9f47627 100644
--- a/app/models/form/sales/pages/buyer2_ethnic_background_asian.rb
+++ b/app/models/form/sales/pages/buyer2_ethnic_background_asian.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer2EthnicBackgroundAsian < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_2_ethnic_background_asian"
+ @copy_key = "sales.household_characteristics.ethnicbuy2.ethnic_background_asian"
@depends_on = [{
"ethnic_group2" => 2,
}]
diff --git a/app/models/form/sales/pages/buyer2_ethnic_background_black.rb b/app/models/form/sales/pages/buyer2_ethnic_background_black.rb
index a772f46ac..2178d42ce 100644
--- a/app/models/form/sales/pages/buyer2_ethnic_background_black.rb
+++ b/app/models/form/sales/pages/buyer2_ethnic_background_black.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer2EthnicBackgroundBlack < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_2_ethnic_background_black"
+ @copy_key = "sales.household_characteristics.ethnicbuy2.ethnic_background_black"
@depends_on = [{
"ethnic_group2" => 3,
}]
diff --git a/app/models/form/sales/pages/buyer2_ethnic_background_mixed.rb b/app/models/form/sales/pages/buyer2_ethnic_background_mixed.rb
index f02165dfc..9a8710396 100644
--- a/app/models/form/sales/pages/buyer2_ethnic_background_mixed.rb
+++ b/app/models/form/sales/pages/buyer2_ethnic_background_mixed.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer2EthnicBackgroundMixed < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_2_ethnic_background_mixed"
+ @copy_key = "sales.household_characteristics.ethnicbuy2.ethnic_background_black"
@depends_on = [{
"ethnic_group2" => 1,
}]
diff --git a/app/models/form/sales/pages/buyer2_ethnic_background_white.rb b/app/models/form/sales/pages/buyer2_ethnic_background_white.rb
index 2013c8682..d81f20d4f 100644
--- a/app/models/form/sales/pages/buyer2_ethnic_background_white.rb
+++ b/app/models/form/sales/pages/buyer2_ethnic_background_white.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer2EthnicBackgroundWhite < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_2_ethnic_background_white"
+ @copy_key = "sales.household_characteristics.ethnicbuy2.ethnic_background_white"
@depends_on = [{
"ethnic_group2" => 0,
}]
diff --git a/app/models/form/sales/pages/buyer2_relationship_to_buyer1.rb b/app/models/form/sales/pages/buyer2_relationship_to_buyer1.rb
index 0791769d8..a9d3550f0 100644
--- a/app/models/form/sales/pages/buyer2_relationship_to_buyer1.rb
+++ b/app/models/form/sales/pages/buyer2_relationship_to_buyer1.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer2RelationshipToBuyer1 < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_2_relationship_to_buyer_1"
+ @copy_key = "sales.household_characteristics.relat2.buyer"
@depends_on = [
{
"joint_purchase?" => true,
diff --git a/app/models/form/sales/pages/buyer2_working_situation.rb b/app/models/form/sales/pages/buyer2_working_situation.rb
index 1ff7bbecc..4e73c09cf 100644
--- a/app/models/form/sales/pages/buyer2_working_situation.rb
+++ b/app/models/form/sales/pages/buyer2_working_situation.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::Buyer2WorkingSituation < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_2_working_situation"
+ @copy_key = "sales.household_characteristics.ecstat2.buyer"
@depends_on = [
{
"joint_purchase?" => true,
diff --git a/app/models/form/sales/pages/buyer_interview.rb b/app/models/form/sales/pages/buyer_interview.rb
index d042db288..c6a43690b 100644
--- a/app/models/form/sales/pages/buyer_interview.rb
+++ b/app/models/form/sales/pages/buyer_interview.rb
@@ -2,7 +2,7 @@ class Form::Sales::Pages::BuyerInterview < ::Form::Page
def initialize(id, hsh, subsection, joint_purchase:)
super(id, hsh, subsection)
@joint_purchase = joint_purchase
- @copy_key = "sales.setup.noint.#{joint_purchase ? 'joint_purchase' : 'not_joint_purchase'}"
+ @copy_key = "sales.#{subsection.id}.noint.#{joint_purchase ? 'joint_purchase' : 'not_joint_purchase'}"
end
def questions
diff --git a/app/models/form/sales/pages/buyer_live_in_value_check.rb b/app/models/form/sales/pages/buyer_live_in_value_check.rb
index 99080ae77..bb08ba7f4 100644
--- a/app/models/form/sales/pages/buyer_live_in_value_check.rb
+++ b/app/models/form/sales/pages/buyer_live_in_value_check.rb
@@ -6,12 +6,13 @@ class Form::Sales::Pages::BuyerLiveInValueCheck < Form::Sales::Pages::Person
"buyer#{person_index}_livein_wrong_for_ownership_type?" => true,
},
]
+ @copy_key = "sales.soft_validations.buyer_livein_value_check.buyer#{person_index}"
@title_text = {
- "translation" => "soft_validations.buyer#{person_index}_livein_wrong_for_ownership_type.title_text",
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.title_text",
"arguments" => [{ "key" => "ownership_scheme", "label" => false, "i18n_template" => "ownership_scheme" }],
}
@informative_text = {
- "translation" => "soft_validations.buyer#{person_index}_livein_wrong_for_ownership_type.hint_text",
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.informative_text",
"arguments" => [{ "key" => "ownership_scheme", "label" => false, "i18n_template" => "ownership_scheme" }],
}
end
diff --git a/app/models/form/sales/pages/gender_identity2.rb b/app/models/form/sales/pages/gender_identity2.rb
index 94e585795..dc38847e4 100644
--- a/app/models/form/sales/pages/gender_identity2.rb
+++ b/app/models/form/sales/pages/gender_identity2.rb
@@ -2,6 +2,7 @@ class Form::Sales::Pages::GenderIdentity2 < ::Form::Page
def initialize(id, hsh, subsection)
super
@id = "buyer_2_gender_identity"
+ @copy_key = "sales.household_characteristics.sex2.buyer"
@depends_on = [
{
"joint_purchase?" => true,
diff --git a/app/models/form/sales/pages/multiple_partners_value_check.rb b/app/models/form/sales/pages/multiple_partners_value_check.rb
index db409f148..37ab02ca4 100644
--- a/app/models/form/sales/pages/multiple_partners_value_check.rb
+++ b/app/models/form/sales/pages/multiple_partners_value_check.rb
@@ -6,12 +6,16 @@ class Form::Sales::Pages::MultiplePartnersValueCheck < Form::Sales::Pages::Perso
"multiple_partners?" => true,
},
]
+ @copy_key = "sales.soft_validations.multiple_partners_value_check"
@person_index = person_index
@title_text = {
- "translation" => "soft_validations.multiple_partners_sales.title",
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.title_text",
+ "arguments" => [],
+ }
+ @informative_text = {
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.informative_text",
"arguments" => [],
}
- @informative_text = {}
end
def questions
diff --git a/app/models/form/sales/pages/not_retired_value_check.rb b/app/models/form/sales/pages/not_retired_value_check.rb
index 193aa6e7d..cf480cb59 100644
--- a/app/models/form/sales/pages/not_retired_value_check.rb
+++ b/app/models/form/sales/pages/not_retired_value_check.rb
@@ -7,11 +7,13 @@ class Form::Sales::Pages::NotRetiredValueCheck < Form::Sales::Pages::Person
},
]
@person_index = person_index
+ @copy_key = "sales.soft_validations.retirement_value_check.max"
@title_text = {
- "translation" => "soft_validations.retirement.max.title",
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.title_text",
}
@informative_text = {
- "translation" => "soft_validations.retirement.max.hint_text",
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.informative_text",
+ "arguments" => [],
}
end
diff --git a/app/models/form/sales/pages/old_persons_shared_ownership_value_check.rb b/app/models/form/sales/pages/old_persons_shared_ownership_value_check.rb
index 0254804f0..7ac7b7cad 100644
--- a/app/models/form/sales/pages/old_persons_shared_ownership_value_check.rb
+++ b/app/models/form/sales/pages/old_persons_shared_ownership_value_check.rb
@@ -1,12 +1,13 @@
class Form::Sales::Pages::OldPersonsSharedOwnershipValueCheck < ::Form::Page
def initialize(id, hsh, subsection, joint_purchase:)
super(id, hsh, subsection)
+ @copy_key = "sales.soft_validations.old_persons_shared_ownership_value_check"
@title_text = {
- "translation" => "soft_validations.old_persons_shared_ownership.title_text.#{joint_purchase ? 'two' : 'one'}",
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.title_text.#{joint_purchase ? 'joint_purchase' : 'not_joint_purchase'}",
"arguments" => [],
}
@informative_text = {
- "translation" => "soft_validations.old_persons_shared_ownership.hint_text",
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.informative_text",
"arguments" => [],
}
@joint_purchase = joint_purchase
diff --git a/app/models/form/sales/pages/partner_under_16_value_check.rb b/app/models/form/sales/pages/partner_under_16_value_check.rb
index 5113e1677..f6b3622f1 100644
--- a/app/models/form/sales/pages/partner_under_16_value_check.rb
+++ b/app/models/form/sales/pages/partner_under_16_value_check.rb
@@ -6,9 +6,10 @@ class Form::Sales::Pages::PartnerUnder16ValueCheck < Form::Sales::Pages::Person
"person_#{person_index}_partner_under_16?" => true,
},
]
+ @copy_key = "sales.soft_validations.partner_under_16_value_check"
@person_index = person_index
@title_text = {
- "translation" => "soft_validations.partner_under_16_sales.title",
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.title_text",
"arguments" => [
{
"key" => "age#{person_index}",
@@ -17,7 +18,10 @@ class Form::Sales::Pages::PartnerUnder16ValueCheck < Form::Sales::Pages::Person
},
],
}
- @informative_text = {}
+ @informative_text = {
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.informative_text",
+ "arguments" => [],
+ }
end
def questions
diff --git a/app/models/form/sales/pages/person_age.rb b/app/models/form/sales/pages/person_age.rb
index 82e958aca..af7daa606 100644
--- a/app/models/form/sales/pages/person_age.rb
+++ b/app/models/form/sales/pages/person_age.rb
@@ -1,6 +1,7 @@
class Form::Sales::Pages::PersonAge < Form::Sales::Pages::Person
def initialize(id, hsh, subsection, person_index:)
super
+ @copy_key = person_index == 2 ? "sales.household_characteristics.age2.person" : "sales.household_characteristics.age#{person_index}"
@depends_on = [{ "details_known_#{person_index}" => 1 }]
end
diff --git a/app/models/form/sales/pages/person_gender_identity.rb b/app/models/form/sales/pages/person_gender_identity.rb
index 7cc080fa4..f4673d1db 100644
--- a/app/models/form/sales/pages/person_gender_identity.rb
+++ b/app/models/form/sales/pages/person_gender_identity.rb
@@ -1,6 +1,7 @@
class Form::Sales::Pages::PersonGenderIdentity < Form::Sales::Pages::Person
def initialize(id, hsh, subsection, person_index:)
super
+ @copy_key = "sales.household_characteristics.sex2.person" if person_index == 2
@depends_on = [
{ "details_known_#{person_index}" => 1 },
]
diff --git a/app/models/form/sales/pages/person_relationship_to_buyer_1.rb b/app/models/form/sales/pages/person_relationship_to_buyer_1.rb
index 3967d57ea..8f09e50b6 100644
--- a/app/models/form/sales/pages/person_relationship_to_buyer_1.rb
+++ b/app/models/form/sales/pages/person_relationship_to_buyer_1.rb
@@ -1,6 +1,7 @@
class Form::Sales::Pages::PersonRelationshipToBuyer1 < ::Form::Sales::Pages::Person
def initialize(id, hsh, subsection, person_index:)
super
+ @copy_key = "sales.household_characteristics.relat2.person" if person_index == 2
@depends_on = [
{ "details_known_#{person_index}" => 1 },
]
diff --git a/app/models/form/sales/pages/person_student_not_child_value_check.rb b/app/models/form/sales/pages/person_student_not_child_value_check.rb
index a798c8e16..33448298c 100644
--- a/app/models/form/sales/pages/person_student_not_child_value_check.rb
+++ b/app/models/form/sales/pages/person_student_not_child_value_check.rb
@@ -6,11 +6,12 @@ class Form::Sales::Pages::PersonStudentNotChildValueCheck < Form::Sales::Pages::
"person_#{person_index}_student_not_child?" => true,
},
]
+ @copy_key = "sales.soft_validations.student_not_child_value_check"
@person_index = person_index
@title_text = {
- "translation" => "soft_validations.student_not_child.title_text",
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.title_text",
}
- @informative_text = {}
+ @informative_text = { "translation" => "forms.#{form.start_date.year}.#{@copy_key}.informative_text", "arguments" => [] }
end
def questions
diff --git a/app/models/form/sales/pages/person_working_situation.rb b/app/models/form/sales/pages/person_working_situation.rb
index 488141ccf..5237d2827 100644
--- a/app/models/form/sales/pages/person_working_situation.rb
+++ b/app/models/form/sales/pages/person_working_situation.rb
@@ -1,6 +1,7 @@
class Form::Sales::Pages::PersonWorkingSituation < Form::Sales::Pages::Person
def initialize(id, hsh, subsection, person_index:)
super
+ @copy_key = "sales.household_characteristics.ecstat2.person" if person_index == 2
@depends_on = [
{
"details_known_#{person_index}" => 1,
diff --git a/app/models/form/sales/pages/privacy_notice.rb b/app/models/form/sales/pages/privacy_notice.rb
index cf6a7bbbc..40c441d3e 100644
--- a/app/models/form/sales/pages/privacy_notice.rb
+++ b/app/models/form/sales/pages/privacy_notice.rb
@@ -1,7 +1,7 @@
class Form::Sales::Pages::PrivacyNotice < ::Form::Page
def initialize(id, hsh, subsection, joint_purchase:)
super(id, hsh, subsection)
- @copy_key = "sales.setup.privacynotice.#{joint_purchase ? 'joint_purchase' : 'not_joint_purchase'}"
+ @copy_key = "sales.#{subsection.id}.privacynotice.#{joint_purchase ? 'joint_purchase' : 'not_joint_purchase'}"
@joint_purchase = joint_purchase
end
diff --git a/app/models/form/sales/pages/retirement_value_check.rb b/app/models/form/sales/pages/retirement_value_check.rb
index 9e5dbb87f..0f3e45559 100644
--- a/app/models/form/sales/pages/retirement_value_check.rb
+++ b/app/models/form/sales/pages/retirement_value_check.rb
@@ -7,8 +7,9 @@ class Form::Sales::Pages::RetirementValueCheck < Form::Sales::Pages::Person
},
]
@person_index = person_index
+ @copy_key = "sales.soft_validations.retirement_value_check.min"
@title_text = {
- "translation" => "soft_validations.retirement.min.title",
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.title_text",
"arguments" => [
{
"key" => "age#{person_index}",
@@ -17,7 +18,10 @@ class Form::Sales::Pages::RetirementValueCheck < Form::Sales::Pages::Person
},
],
}
- @informative_text = {}
+ @informative_text = {
+ "translation" => "forms.#{form.start_date.year}.#{@copy_key}.informative_text",
+ "arguments" => [],
+ }
end
def questions
diff --git a/app/models/form/sales/questions/age1.rb b/app/models/form/sales/questions/age1.rb
index 65a969c08..4722d0208 100644
--- a/app/models/form/sales/questions/age1.rb
+++ b/app/models/form/sales/questions/age1.rb
@@ -2,10 +2,9 @@ class Form::Sales::Questions::Age1 < ::Form::Question
def initialize(id, hsh, page)
super
@id = "age1"
- @check_answer_label = "Buyer 1’s age"
- @header = "Age"
@type = "numeric"
@width = 2
+ @copy_key = "sales.household_characteristics.age1.age1"
@inferred_check_answers_value = [
{
"condition" => { "age1_known" => 1 },
diff --git a/app/models/form/sales/questions/age2.rb b/app/models/form/sales/questions/age2.rb
index 82deecbed..29d955291 100644
--- a/app/models/form/sales/questions/age2.rb
+++ b/app/models/form/sales/questions/age2.rb
@@ -2,8 +2,7 @@ class Form::Sales::Questions::Age2 < ::Form::Question
def initialize(id, hsh, page)
super
@id = "age2"
- @check_answer_label = "Buyer 2’s age"
- @header = "Age"
+ @copy_key = "sales.household_characteristics.age2.buyer.age2"
@type = "numeric"
@width = 2
@inferred_check_answers_value = [{
diff --git a/app/models/form/sales/questions/buyer1_age_known.rb b/app/models/form/sales/questions/buyer1_age_known.rb
index 2e38871eb..9f6da83ad 100644
--- a/app/models/form/sales/questions/buyer1_age_known.rb
+++ b/app/models/form/sales/questions/buyer1_age_known.rb
@@ -2,11 +2,9 @@ class Form::Sales::Questions::Buyer1AgeKnown < ::Form::Question
def initialize(id, hsh, page)
super
@id = "age1_known"
- @check_answer_label = "Buyer 1’s age"
- @header = "Do you know buyer 1’s age?"
@type = "radio"
+ @copy_key = "sales.household_characteristics.age1.age1_known"
@answer_options = ANSWER_OPTIONS
- @hint_text = "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
@conditional_for = {
"age1" => [0],
}
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 fbaca62ca..12a4bd842 100644
--- a/app/models/form/sales/questions/buyer1_ethnic_background_arab.rb
+++ b/app/models/form/sales/questions/buyer1_ethnic_background_arab.rb
@@ -2,11 +2,9 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundArab < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnic"
- @check_answer_label = "Buyer 1’s ethnic background"
- @header = "Which of the following best describes buyer 1’s Arab background?"
+ @copy_key = "sales.household_characteristics.ethnic.ethnic_background_arab"
@type = "radio"
@answer_options = ANSWER_OPTIONS
- @hint_text = form.start_year_after_2024? ? "" : "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
@check_answers_card_number = 1
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
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 64cffb507..1b982e39c 100644
--- a/app/models/form/sales/questions/buyer1_ethnic_background_asian.rb
+++ b/app/models/form/sales/questions/buyer1_ethnic_background_asian.rb
@@ -2,11 +2,9 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundAsian < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnic"
- @check_answer_label = "Buyer 1’s ethnic background"
- @header = "Which of the following best describes buyer 1’s Asian or Asian British background?"
+ @copy_key = "sales.household_characteristics.ethnic.ethnic_background_asian"
@type = "radio"
@answer_options = ANSWER_OPTIONS
- @hint_text = form.start_year_after_2024? ? "" : "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
@check_answers_card_number = 1
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
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 41d951d71..fac93e0eb 100644
--- a/app/models/form/sales/questions/buyer1_ethnic_background_black.rb
+++ b/app/models/form/sales/questions/buyer1_ethnic_background_black.rb
@@ -2,11 +2,9 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundBlack < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnic"
- @check_answer_label = "Buyer 1’s ethnic background"
- @header = "Which of the following best describes buyer 1’s Black, African, Caribbean or Black British background?"
+ @copy_key = "sales.household_characteristics.ethnic.ethnic_background_black"
@type = "radio"
@answer_options = ANSWER_OPTIONS
- @hint_text = form.start_year_after_2024? ? "" : "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
@check_answers_card_number = 1
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
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 42506b70e..342490da3 100644
--- a/app/models/form/sales/questions/buyer1_ethnic_background_mixed.rb
+++ b/app/models/form/sales/questions/buyer1_ethnic_background_mixed.rb
@@ -2,11 +2,9 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundMixed < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnic"
- @check_answer_label = "Buyer 1’s ethnic background"
- @header = "Which of the following best describes buyer 1’s Mixed or Multiple ethnic groups background?"
+ @copy_key = "sales.household_characteristics.ethnic.ethnic_background_mixed"
@type = "radio"
@answer_options = ANSWER_OPTIONS
- @hint_text = form.start_year_after_2024? ? "" : "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
@check_answers_card_number = 1
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
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 6c8017fbf..2bbe4939f 100644
--- a/app/models/form/sales/questions/buyer1_ethnic_background_white.rb
+++ b/app/models/form/sales/questions/buyer1_ethnic_background_white.rb
@@ -2,10 +2,8 @@ class Form::Sales::Questions::Buyer1EthnicBackgroundWhite < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnic"
- @check_answer_label = "Buyer 1’s ethnic background"
- @header = "Which of the following best describes buyer 1’s White background?"
+ @copy_key = "sales.household_characteristics.ethnic.ethnic_background_white"
@type = "radio"
- @hint_text = form.start_year_after_2024? ? "" : "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
@check_answers_card_number = 1
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
diff --git a/app/models/form/sales/questions/buyer1_ethnic_group.rb b/app/models/form/sales/questions/buyer1_ethnic_group.rb
index a3eec2474..9e67164cc 100644
--- a/app/models/form/sales/questions/buyer1_ethnic_group.rb
+++ b/app/models/form/sales/questions/buyer1_ethnic_group.rb
@@ -2,11 +2,8 @@ class Form::Sales::Questions::Buyer1EthnicGroup < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnic_group"
- @check_answer_label = "Buyer 1’s ethnic group"
- @header = "What is buyer 1’s ethnic group?"
@type = "radio"
@answer_options = ANSWER_OPTIONS
- @hint_text = form.start_year_after_2024? ? "" : "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
@check_answers_card_number = 1
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
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 83dff6437..835cbe4a3 100644
--- a/app/models/form/sales/questions/buyer1_live_in_property.rb
+++ b/app/models/form/sales/questions/buyer1_live_in_property.rb
@@ -2,11 +2,8 @@ class Form::Sales::Questions::Buyer1LiveInProperty < ::Form::Question
def initialize(id, hsh, page)
super
@id = "buy1livein"
- @check_answer_label = "Will buyer 1 live in the property?"
- @header = "Will buyer 1 live in the property?"
@type = "radio"
@answer_options = ANSWER_OPTIONS
- @hint_text = form.start_year_after_2024? ? "" : "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
@check_answers_card_number = 1
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
end
diff --git a/app/models/form/sales/questions/buyer1_nationality.rb b/app/models/form/sales/questions/buyer1_nationality.rb
index b0bedfbb4..9cd5f3eed 100644
--- a/app/models/form/sales/questions/buyer1_nationality.rb
+++ b/app/models/form/sales/questions/buyer1_nationality.rb
@@ -2,10 +2,7 @@ class Form::Sales::Questions::Buyer1Nationality < ::Form::Question
def initialize(id, hsh, page)
super
@id = "national"
- @check_answer_label = "Buyer 1’s nationality"
- @header = "What is buyer 1’s nationality?"
@type = "radio"
- @hint_text = "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = 1
@inferred_check_answers_value = [{
diff --git a/app/models/form/sales/questions/buyer1_working_situation.rb b/app/models/form/sales/questions/buyer1_working_situation.rb
index 376367624..b00db033f 100644
--- a/app/models/form/sales/questions/buyer1_working_situation.rb
+++ b/app/models/form/sales/questions/buyer1_working_situation.rb
@@ -2,11 +2,8 @@ class Form::Sales::Questions::Buyer1WorkingSituation < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ecstat1"
- @check_answer_label = "Buyer 1's working situation"
- @header = "Which of these best describes buyer 1's working situation?"
@type = "radio"
@answer_options = ANSWER_OPTIONS
- @hint_text = form.start_year_after_2024? ? "" : "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
@check_answers_card_number = 1
@inferred_check_answers_value = [{
"condition" => {
diff --git a/app/models/form/sales/questions/buyer2_age_known.rb b/app/models/form/sales/questions/buyer2_age_known.rb
index 7123d3e5e..ecd6c91f0 100644
--- a/app/models/form/sales/questions/buyer2_age_known.rb
+++ b/app/models/form/sales/questions/buyer2_age_known.rb
@@ -2,8 +2,7 @@ class Form::Sales::Questions::Buyer2AgeKnown < ::Form::Question
def initialize(id, hsh, page)
super
@id = "age2_known"
- @check_answer_label = "Buyer 2’s age"
- @header = "Do you know buyer 2’s age?"
+ @copy_key = "sales.household_characteristics.age2.buyer.age2_known"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@conditional_for = {
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 5debc0257..e69ad5a9e 100644
--- a/app/models/form/sales/questions/buyer2_ethnic_background_arab.rb
+++ b/app/models/form/sales/questions/buyer2_ethnic_background_arab.rb
@@ -2,8 +2,7 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundArab < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnicbuy2"
- @check_answer_label = "Buyer 2’s ethnic background"
- @header = "Which of the following best describes buyer 2’s Arab background?"
+ @copy_key = "sales.household_characteristics.ethnicbuy2.ethnic_background_arab"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = 2
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 eee32a4b2..8c31fc723 100644
--- a/app/models/form/sales/questions/buyer2_ethnic_background_asian.rb
+++ b/app/models/form/sales/questions/buyer2_ethnic_background_asian.rb
@@ -2,8 +2,7 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundAsian < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnicbuy2"
- @check_answer_label = "Buyer 2’s ethnic background"
- @header = "Which of the following best describes buyer 2’s Asian or Asian British background?"
+ @copy_key = "sales.household_characteristics.ethnicbuy2.ethnic_background_asian"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = 2
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 4fffd67ca..f44119251 100644
--- a/app/models/form/sales/questions/buyer2_ethnic_background_black.rb
+++ b/app/models/form/sales/questions/buyer2_ethnic_background_black.rb
@@ -2,8 +2,7 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundBlack < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnicbuy2"
- @check_answer_label = "Buyer 2’s ethnic background"
- @header = "Which of the following best describes buyer 2’s Black, African, Caribbean or Black British background?"
+ @copy_key = "sales.household_characteristics.ethnicbuy2.ethnic_background_black"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = 2
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 d66e2e2aa..013ad100b 100644
--- a/app/models/form/sales/questions/buyer2_ethnic_background_mixed.rb
+++ b/app/models/form/sales/questions/buyer2_ethnic_background_mixed.rb
@@ -2,8 +2,7 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundMixed < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnicbuy2"
- @check_answer_label = "Buyer 2’s ethnic background"
- @header = "Which of the following best describes buyer 2’s Mixed or Multiple ethnic groups background?"
+ @copy_key = "sales.household_characteristics.ethnicbuy2.ethnic_background_mixed"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = 2
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 8af5b8641..232e0f99e 100644
--- a/app/models/form/sales/questions/buyer2_ethnic_background_white.rb
+++ b/app/models/form/sales/questions/buyer2_ethnic_background_white.rb
@@ -2,8 +2,7 @@ class Form::Sales::Questions::Buyer2EthnicBackgroundWhite < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnicbuy2"
- @check_answer_label = "Buyer 2’s ethnic background"
- @header = "Which of the following best describes buyer 2’s White background?"
+ @copy_key = "sales.household_characteristics.ethnicbuy2.ethnic_background_white"
@type = "radio"
@check_answers_card_number = 2
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
diff --git a/app/models/form/sales/questions/buyer2_ethnic_group.rb b/app/models/form/sales/questions/buyer2_ethnic_group.rb
index 16b5d7cd0..4613b9963 100644
--- a/app/models/form/sales/questions/buyer2_ethnic_group.rb
+++ b/app/models/form/sales/questions/buyer2_ethnic_group.rb
@@ -2,8 +2,6 @@ class Form::Sales::Questions::Buyer2EthnicGroup < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ethnic_group2"
- @check_answer_label = "Buyer 2’s ethnic group"
- @header = "What is buyer 2’s ethnic group?"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = 2
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 93f5c3870..4d6aad8ba 100644
--- a/app/models/form/sales/questions/buyer2_live_in_property.rb
+++ b/app/models/form/sales/questions/buyer2_live_in_property.rb
@@ -2,8 +2,6 @@ class Form::Sales::Questions::Buyer2LiveInProperty < ::Form::Question
def initialize(id, hsh, page)
super
@id = "buy2livein"
- @check_answer_label = "Will buyer 2 live in the property?"
- @header = "Will buyer 2 live in the property?"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = 2
diff --git a/app/models/form/sales/questions/buyer2_nationality.rb b/app/models/form/sales/questions/buyer2_nationality.rb
index 62f269e4a..c7e92d294 100644
--- a/app/models/form/sales/questions/buyer2_nationality.rb
+++ b/app/models/form/sales/questions/buyer2_nationality.rb
@@ -2,8 +2,6 @@ class Form::Sales::Questions::Buyer2Nationality < ::Form::Question
def initialize(id, hsh, page)
super
@id = "nationalbuy2"
- @check_answer_label = "Buyer 2’s nationality"
- @header = "What is buyer 2’s nationality?"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = 2
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 f8acf75aa..3f0fc299c 100644
--- a/app/models/form/sales/questions/buyer2_relationship_to_buyer1.rb
+++ b/app/models/form/sales/questions/buyer2_relationship_to_buyer1.rb
@@ -2,8 +2,7 @@ class Form::Sales::Questions::Buyer2RelationshipToBuyer1 < ::Form::Question
def initialize(id, hsh, page)
super
@id = "relat2"
- @check_answer_label = "Buyer 2's relationship to buyer 1"
- @header = "What is buyer 2's relationship to buyer 1?"
+ @copy_key = "sales.household_characteristics.relat2.buyer"
@type = "radio"
@answer_options = answer_options
@check_answers_card_number = 2
diff --git a/app/models/form/sales/questions/buyer2_working_situation.rb b/app/models/form/sales/questions/buyer2_working_situation.rb
index 54fcb5931..5356cb8e8 100644
--- a/app/models/form/sales/questions/buyer2_working_situation.rb
+++ b/app/models/form/sales/questions/buyer2_working_situation.rb
@@ -2,8 +2,7 @@ class Form::Sales::Questions::Buyer2WorkingSituation < ::Form::Question
def initialize(id, hsh, page)
super
@id = "ecstat2"
- @check_answer_label = "Buyer 2's working situation"
- @header = "Which of these best describes buyer 2's working situation?"
+ @copy_key = "sales.household_characteristics.ecstat2.buyer"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = 2
diff --git a/app/models/form/sales/questions/buyer_interview.rb b/app/models/form/sales/questions/buyer_interview.rb
index 8b434d11c..b49b57807 100644
--- a/app/models/form/sales/questions/buyer_interview.rb
+++ b/app/models/form/sales/questions/buyer_interview.rb
@@ -2,7 +2,7 @@ class Form::Sales::Questions::BuyerInterview < ::Form::Question
def initialize(id, hsh, page, joint_purchase:)
super(id, hsh, page)
@id = "noint"
- @copy_key = "sales.setup.noint.#{joint_purchase ? 'joint_purchase' : 'not_joint_purchase'}"
+ @copy_key = "sales.#{subsection.id}.noint.#{joint_purchase ? 'joint_purchase' : 'not_joint_purchase'}"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
diff --git a/app/models/form/sales/questions/buyer_live_in_value_check.rb b/app/models/form/sales/questions/buyer_live_in_value_check.rb
index a4209c38c..1526e1e6e 100644
--- a/app/models/form/sales/questions/buyer_live_in_value_check.rb
+++ b/app/models/form/sales/questions/buyer_live_in_value_check.rb
@@ -2,7 +2,7 @@ class Form::Sales::Questions::BuyerLiveInValueCheck < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
@id = "buyer_livein_value_check"
- @check_answer_label = "Buyer live in confirmation"
+ @copy_key = "sales.soft_validations.buyer_livein_value_check.buyer#{person_index}"
@type = "interruption_screen"
@answer_options = {
"0" => { "value" => "Yes" },
@@ -19,6 +19,5 @@ class Form::Sales::Questions::BuyerLiveInValueCheck < ::Form::Question
],
}
@check_answers_card_number = person_index
- @header = "Are you sure this is correct?"
end
end
diff --git a/app/models/form/sales/questions/gender_identity1.rb b/app/models/form/sales/questions/gender_identity1.rb
index e59ba355b..c82af4b91 100644
--- a/app/models/form/sales/questions/gender_identity1.rb
+++ b/app/models/form/sales/questions/gender_identity1.rb
@@ -2,8 +2,6 @@ class Form::Sales::Questions::GenderIdentity1 < ::Form::Question
def initialize(id, hsh, page)
super
@id = "sex1"
- @check_answer_label = "Buyer 1’s gender identity"
- @header = "Which of these best describes buyer 1’s gender identity?"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = 1
@@ -17,13 +15,5 @@ class Form::Sales::Questions::GenderIdentity1 < ::Form::Question
"R" => { "value" => "Prefers not to say" },
}.freeze
- def hint_text
- if form.start_year_after_2024?
- "This should be however they personally choose to identify from the options below. This may or may not be the same as their biological sex or the sex they were assigned at birth."
- else
- "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
- end
- end
-
QUESTION_NUMBER_FROM_YEAR = { 2023 => 21, 2024 => 23 }.freeze
end
diff --git a/app/models/form/sales/questions/gender_identity2.rb b/app/models/form/sales/questions/gender_identity2.rb
index 110de6c3a..50545a796 100644
--- a/app/models/form/sales/questions/gender_identity2.rb
+++ b/app/models/form/sales/questions/gender_identity2.rb
@@ -2,9 +2,8 @@ class Form::Sales::Questions::GenderIdentity2 < ::Form::Question
def initialize(id, hsh, page)
super
@id = "sex2"
- @check_answer_label = "Buyer 2’s gender identity"
- @header = "Which of these best describes buyer 2’s gender identity?"
@type = "radio"
+ @copy_key = "sales.household_characteristics.sex2.buyer"
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = 2
@inferred_check_answers_value = [{
@@ -23,11 +22,5 @@ class Form::Sales::Questions::GenderIdentity2 < ::Form::Question
"R" => { "value" => "Buyer prefers not to say" },
}.freeze
- def hint_text
- return unless form.start_year_after_2024?
-
- "This should be however they personally choose to identify from the options below. This may or may not be the same as their biological sex or the sex they were assigned at birth."
- end
-
QUESTION_NUMBER_FROM_YEAR = { 2023 => 29, 2024 => 31 }.freeze
end
diff --git a/app/models/form/sales/questions/multiple_partners_value_check.rb b/app/models/form/sales/questions/multiple_partners_value_check.rb
index ce99438d0..06e3af3b3 100644
--- a/app/models/form/sales/questions/multiple_partners_value_check.rb
+++ b/app/models/form/sales/questions/multiple_partners_value_check.rb
@@ -2,7 +2,7 @@ class Form::Sales::Questions::MultiplePartnersValueCheck < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
@id = "multiple_partners_value_check"
- @check_answer_label = "Multiple partners confirmation"
+ @copy_key = "sales.soft_validations.multiple_partners_value_check"
@type = "interruption_screen"
@answer_options = {
"0" => { "value" => "Yes" },
@@ -19,6 +19,5 @@ class Form::Sales::Questions::MultiplePartnersValueCheck < ::Form::Question
],
}
@check_answers_card_number = person_index
- @header = "Are you sure this is correct?"
end
end
diff --git a/app/models/form/sales/questions/nationality_all.rb b/app/models/form/sales/questions/nationality_all.rb
index 68ef122bf..6dd3c19df 100644
--- a/app/models/form/sales/questions/nationality_all.rb
+++ b/app/models/form/sales/questions/nationality_all.rb
@@ -1,8 +1,6 @@
class Form::Sales::Questions::NationalityAll < ::Form::Question
def initialize(id, hsh, page, buyer_index)
super(id, hsh, page)
- @check_answer_label = "Buyer #{buyer_index}’s nationality"
- @header = "Enter a nationality"
@type = "select"
@answer_options = GlobalConstants::COUNTRIES_ANSWER_OPTIONS
@check_answers_card_number = buyer_index
diff --git a/app/models/form/sales/questions/nationality_all_group.rb b/app/models/form/sales/questions/nationality_all_group.rb
index 86dcabc88..afbc5bf19 100644
--- a/app/models/form/sales/questions/nationality_all_group.rb
+++ b/app/models/form/sales/questions/nationality_all_group.rb
@@ -1,10 +1,7 @@
class Form::Sales::Questions::NationalityAllGroup < ::Form::Question
def initialize(id, hsh, page, buyer_index)
super(id, hsh, page)
- @check_answer_label = "Buyer #{buyer_index}’s nationality"
- @header = "What is buyer #{buyer_index}’s nationality?"
@type = "radio"
- @hint_text = "If buyer #{buyer_index} is a dual national of the United Kingdom and another country, enter United Kingdom. If they are a dual national of two other countries, the buyer should decide which country to enter."
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = buyer_index
@conditional_for = buyer_index == 1 ? { "nationality_all" => [12] } : { "nationality_all_buyer2" => [12] }
diff --git a/app/models/form/sales/questions/not_retired_value_check.rb b/app/models/form/sales/questions/not_retired_value_check.rb
index 58c95c1bb..86b85f294 100644
--- a/app/models/form/sales/questions/not_retired_value_check.rb
+++ b/app/models/form/sales/questions/not_retired_value_check.rb
@@ -2,7 +2,7 @@ class Form::Sales::Questions::NotRetiredValueCheck < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
@id = "retirement_value_check"
- @check_answer_label = "Retirement confirmation"
+ @copy_key = "sales.soft_validations.retirement_value_check.max"
@type = "interruption_screen"
@answer_options = {
"0" => { "value" => "Yes" },
@@ -19,6 +19,5 @@ class Form::Sales::Questions::NotRetiredValueCheck < ::Form::Question
],
}
@check_answers_card_number = person_index
- @header = "Are you sure this person isn't retired?"
end
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 fd498cebe..c10047da5 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
@@ -2,10 +2,8 @@ class Form::Sales::Questions::NumberOfOthersInProperty < ::Form::Question
def initialize(id, hsh, page, joint_purchase:)
super(id, hsh, page)
@id = "hholdcount"
- @check_answer_label = "Number of other people living in the property"
- @header = "Besides the #{'buyer'.pluralize(joint_purchase ? 2 : 1)}, how many other people live or will live in the property?"
+ @copy_key = joint_purchase ? "sales.household_characteristics.hholdcount.joint_purchase" : "sales.household_characteristics.hholdcount.not_joint_purchase"
@type = "numeric"
- @hint_text = hint(joint_purchase)
@width = 2
@min = 0
@max = 15
@@ -13,15 +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
-private
-
- def hint(joint_purchase)
- if joint_purchase
- "You can provide details for a maximum of 4 other people for a joint purchase."
- else
- "You can provide details for a maximum of 5 other people if there is only one buyer."
- end
- end
-
QUESTION_NUMBER_FROM_YEAR = { 2023 => 35, 2024 => 37 }.freeze
end
diff --git a/app/models/form/sales/questions/old_persons_shared_ownership_value_check.rb b/app/models/form/sales/questions/old_persons_shared_ownership_value_check.rb
index c869dd3be..601e02ac2 100644
--- a/app/models/form/sales/questions/old_persons_shared_ownership_value_check.rb
+++ b/app/models/form/sales/questions/old_persons_shared_ownership_value_check.rb
@@ -2,8 +2,7 @@ class Form::Sales::Questions::OldPersonsSharedOwnershipValueCheck < ::Form::Ques
def initialize(id, hsh, page)
super
@id = "old_persons_shared_ownership_value_check"
- @check_answer_label = "Shared ownership confirmation"
- @header = "Are you sure this is correct?"
+ @copy_key = "sales.soft_validations.old_persons_shared_ownership_value_check"
@type = "interruption_screen"
@answer_options = {
"0" => { "value" => "Yes" },
diff --git a/app/models/form/sales/questions/partner_under_16_value_check.rb b/app/models/form/sales/questions/partner_under_16_value_check.rb
index 4c147b7e5..cca2386fd 100644
--- a/app/models/form/sales/questions/partner_under_16_value_check.rb
+++ b/app/models/form/sales/questions/partner_under_16_value_check.rb
@@ -2,7 +2,7 @@ class Form::Sales::Questions::PartnerUnder16ValueCheck < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
@id = "partner_under_16_value_check"
- @check_answer_label = "Partner under 16 confirmation"
+ @copy_key = "sales.soft_validations.partner_under_16_value_check"
@type = "interruption_screen"
@answer_options = {
"0" => { "value" => "Yes" },
@@ -19,6 +19,5 @@ class Form::Sales::Questions::PartnerUnder16ValueCheck < ::Form::Question
],
}
@check_answers_card_number = person_index
- @header = "Are you sure this is correct?"
end
end
diff --git a/app/models/form/sales/questions/person_age.rb b/app/models/form/sales/questions/person_age.rb
index 9f3d9378f..1638f6103 100644
--- a/app/models/form/sales/questions/person_age.rb
+++ b/app/models/form/sales/questions/person_age.rb
@@ -1,9 +1,8 @@
class Form::Sales::Questions::PersonAge < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
- @check_answer_label = "Person #{person_index}’s age"
- @header = "Age"
@type = "numeric"
+ @copy_key = person_index == 2 ? "sales.household_characteristics.age2.person.age2" : "sales.household_characteristics.age#{person_index}.age#{person_index}"
@width = 3
@inferred_check_answers_value = [{
"condition" => { "age#{person_index}_known" => 1 },
@@ -27,10 +26,4 @@ class Form::Sales::Questions::PersonAge < ::Form::Question
base_question_number + (4 * @person_index)
end
-
- def hint_text
- if form.start_year_after_2024?
- "Answer 1 for children aged under 1 year old"
- end
- end
end
diff --git a/app/models/form/sales/questions/person_age_known.rb b/app/models/form/sales/questions/person_age_known.rb
index b53724e67..ede210c80 100644
--- a/app/models/form/sales/questions/person_age_known.rb
+++ b/app/models/form/sales/questions/person_age_known.rb
@@ -1,10 +1,9 @@
class Form::Sales::Questions::PersonAgeKnown < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
- @check_answer_label = "Person #{person_index}’s age known?"
- @header = "Do you know person #{person_index}’s age?"
@type = "radio"
@answer_options = ANSWER_OPTIONS
+ @copy_key = person_index == 2 ? "sales.household_characteristics.age2.person.age2_known" : "sales.household_characteristics.age#{person_index}.age#{person_index}_known"
@conditional_for = {
"age#{person_index}" => [0],
}
diff --git a/app/models/form/sales/questions/person_gender_identity.rb b/app/models/form/sales/questions/person_gender_identity.rb
index 8b1a0ff2b..44cf15a85 100644
--- a/app/models/form/sales/questions/person_gender_identity.rb
+++ b/app/models/form/sales/questions/person_gender_identity.rb
@@ -1,9 +1,8 @@
class Form::Sales::Questions::PersonGenderIdentity < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
- @check_answer_label = "Person #{person_index}’s gender identity"
- @header = "Which of these best describes Person #{person_index}’s gender identity?"
@type = "radio"
+ @copy_key = "sales.household_characteristics.sex2.person" if person_index == 2
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = person_index
@inferred_check_answers_value = [{
@@ -23,12 +22,6 @@ class Form::Sales::Questions::PersonGenderIdentity < ::Form::Question
"R" => { "value" => "Person prefers not to say" },
}.freeze
- def hint_text
- return unless form.start_year_after_2024?
-
- "This should be however they personally choose to identify from the options below. This may or may not be the same as their biological sex or the sex they were assigned at birth."
- end
-
def question_number
base_question_number = case form.start_date.year
when 2023
diff --git a/app/models/form/sales/questions/person_known.rb b/app/models/form/sales/questions/person_known.rb
index d0de89044..e8a7122f8 100644
--- a/app/models/form/sales/questions/person_known.rb
+++ b/app/models/form/sales/questions/person_known.rb
@@ -1,8 +1,6 @@
class Form::Sales::Questions::PersonKnown < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
- @check_answer_label = "Details known for person #{person_index}?"
- @header = "Do you know the details for person #{person_index}?"
@type = "radio"
@answer_options = ANSWER_OPTIONS
@check_answers_card_number = person_index
diff --git a/app/models/form/sales/questions/person_relationship_to_buyer_1.rb b/app/models/form/sales/questions/person_relationship_to_buyer_1.rb
index 3fe33cef0..af3f2a78b 100644
--- a/app/models/form/sales/questions/person_relationship_to_buyer_1.rb
+++ b/app/models/form/sales/questions/person_relationship_to_buyer_1.rb
@@ -1,9 +1,8 @@
class Form::Sales::Questions::PersonRelationshipToBuyer1 < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
- @check_answer_label = "Person #{person_index}’s relationship to Buyer 1"
- @header = "What is Person #{person_index}’s relationship to Buyer 1?"
@type = "radio"
+ @copy_key = "sales.household_characteristics.relat2.person" if person_index == 2
@answer_options = answer_options
@check_answers_card_number = person_index
@inferred_check_answers_value = [{
diff --git a/app/models/form/sales/questions/person_student_not_child_value_check.rb b/app/models/form/sales/questions/person_student_not_child_value_check.rb
index fba35d05b..c2ff55688 100644
--- a/app/models/form/sales/questions/person_student_not_child_value_check.rb
+++ b/app/models/form/sales/questions/person_student_not_child_value_check.rb
@@ -2,7 +2,7 @@ class Form::Sales::Questions::PersonStudentNotChildValueCheck < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
@id = "student_not_child_value_check"
- @check_answer_label = "Student not a child confirmation"
+ @copy_key = "sales.soft_validations.student_not_child_value_check"
@type = "interruption_screen"
@answer_options = {
"0" => { "value" => "Yes" },
@@ -19,6 +19,5 @@ class Form::Sales::Questions::PersonStudentNotChildValueCheck < ::Form::Question
],
}
@check_answers_card_number = person_index
- @header = "Are you sure this person is not a child?"
end
end
diff --git a/app/models/form/sales/questions/person_working_situation.rb b/app/models/form/sales/questions/person_working_situation.rb
index fd5506170..488a77092 100644
--- a/app/models/form/sales/questions/person_working_situation.rb
+++ b/app/models/form/sales/questions/person_working_situation.rb
@@ -1,9 +1,8 @@
class Form::Sales::Questions::PersonWorkingSituation < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
- @check_answer_label = "Person #{person_index}’s working situation"
- @header = "Which of these best describes Person #{person_index}’s working situation?"
@type = "radio"
+ @copy_key = "sales.household_characteristics.ecstat2.person" if person_index == 2
@check_answers_card_number = person_index
@inferred_check_answers_value = [{
"condition" => {
diff --git a/app/models/form/sales/questions/privacy_notice.rb b/app/models/form/sales/questions/privacy_notice.rb
index a9e737f0e..95921737f 100644
--- a/app/models/form/sales/questions/privacy_notice.rb
+++ b/app/models/form/sales/questions/privacy_notice.rb
@@ -2,7 +2,7 @@ class Form::Sales::Questions::PrivacyNotice < ::Form::Question
def initialize(id, hsh, page, joint_purchase:)
super(id, hsh, page)
@id = "privacynotice"
- @copy_key = "sales.setup.privacynotice.#{joint_purchase ? 'joint_purchase' : 'not_joint_purchase'}"
+ @copy_key = "sales.#{subsection.id}.privacynotice.#{joint_purchase ? 'joint_purchase' : 'not_joint_purchase'}"
@type = "checkbox"
@question_number = QUESTION_NUMBER_FROM_YEAR[form.start_date.year] || QUESTION_NUMBER_FROM_YEAR[QUESTION_NUMBER_FROM_YEAR.keys.max]
@joint_purchase = joint_purchase
diff --git a/app/models/form/sales/questions/retirement_value_check.rb b/app/models/form/sales/questions/retirement_value_check.rb
index 56573490e..6b8b10898 100644
--- a/app/models/form/sales/questions/retirement_value_check.rb
+++ b/app/models/form/sales/questions/retirement_value_check.rb
@@ -2,7 +2,7 @@ class Form::Sales::Questions::RetirementValueCheck < ::Form::Question
def initialize(id, hsh, page, person_index:)
super(id, hsh, page)
@id = "retirement_value_check"
- @check_answer_label = "Retirement confirmation"
+ @copy_key = "sales.soft_validations.retirement_value_check.min"
@type = "interruption_screen"
@answer_options = {
"0" => { "value" => "Yes" },
@@ -19,6 +19,5 @@ class Form::Sales::Questions::RetirementValueCheck < ::Form::Question
],
}
@check_answers_card_number = person_index
- @header = "Are you sure this person is retired?"
end
end
diff --git a/config/locales/en.yml b/config/locales/en.yml
index afa157034..5412c8b2b 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -724,30 +724,17 @@ Make sure these answers are correct."
hint_text: "This is higher than we would expect."
shared_ownership_deposit:
title_text: "You told us that the %{mortgage_deposit_and_discount_error_fields} add up to %{mortgage_deposit_and_discount_total}."
- old_persons_shared_ownership:
- title_text:
- one: "You told us the buyer is using the Older Persons Shared Ownership scheme."
- two: "You told us the buyers are using the Older Persons Shared Ownership scheme."
- hint_text: "At least one buyer must be aged 65 years and over to use this scheme."
staircase_bought_seems_high:
title_text: "You told us that %{percentage}% was bought in this staircasing transaction."
hint_text: "Most staircasing transactions are less than 50%"
monthly_charges_over_soft_max:
title_text: "You told us that the monthly charges were %{mscharge}."
hint_text: "This is higher than we would expect."
- student_not_child:
- title_text: "You told us this person is a student aged between 16 and 19."
discounted_sale_value:
title_text: "Mortgage, deposit, and grant total must equal %{value_with_discount}."
informative_text: "Your given mortgage, deposit and grant total is %{mortgage_deposit_and_grant_total}."
care_home_charges:
title_text: "Care home charges should be provided if this is a care home accommodation."
- buyer1_livein_wrong_for_ownership_type:
- title_text: "You told us that buyer 1 will not live in the property."
- hint_text: " For %{ownership_scheme} types, the buyer usually lives in the property."
- buyer2_livein_wrong_for_ownership_type:
- title_text: "You told us that buyer 2 will not live in the property."
- hint_text: " For %{ownership_scheme} types, the buyer usually lives in the property."
percentage_discount_value:
title_text: "You told us that the percentage discount is %{discount}."
hint_text: "This is higher than we would expect."
@@ -783,12 +770,8 @@ Make sure these answers are correct."
informative_text: "We could not find an address that matches your search. You can search again or continue to enter the address manually."
partner_under_16_lettings:
title: "You told us this person is aged %{age} years and has 'Partner' relationship to the lead tenant."
- partner_under_16_sales:
- title: "You told us this person is aged %{age} years and has 'Partner' relationship to buyer 1."
multiple_partners_lettings:
title: "You told us there are more than 1 persons with 'Partner' relationship to the lead tenant."
- multiple_partners_sales:
- title: "You told us there are more than 1 persons with 'Partner' relationship to buyer 1."
devise:
two_factor_authentication:
diff --git a/config/locales/forms/2023/sales/household_characteristics.en.yml b/config/locales/forms/2023/sales/household_characteristics.en.yml
new file mode 100644
index 000000000..a49a817dc
--- /dev/null
+++ b/config/locales/forms/2023/sales/household_characteristics.en.yml
@@ -0,0 +1,357 @@
+en:
+ forms:
+ 2023:
+ sales:
+ household_characteristics:
+ noint:
+ joint_purchase:
+ page_header: ""
+ check_answer_label: "Buyers interviewed in person?"
+ hint_text: "You should still try to answer all questions even if the buyers weren’t interviewed in person"
+ question_text: "Were the buyers interviewed for any of the answers you will provide on this log?"
+ not_joint_purchase:
+ page_header: ""
+ check_answer_label: "Buyer interviewed in person?"
+ hint_text: "You should still try to answer all questions even if the buyer wasn’t interviewed in person"
+ question_text: "Was the buyer interviewed for any of the answers you will provide on this log?"
+
+ privacynotice:
+ joint_purchase:
+ page_header: ""
+ check_answer_label: "Buyers have seen the privacy notice?"
+ hint_text: ""
+ question_text: "Declaration"
+ not_joint_purchase:
+ page_header: ""
+ check_answer_label: "Buyer has seen the privacy notice?"
+ hint_text: ""
+ question_text: "Declaration"
+
+ age1:
+ page_header: ""
+ age1_known:
+ check_answer_label: "Buyer 1’s age"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "Do you know buyer 1’s age?"
+ age1:
+ check_answer_label: "Buyer 1’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex1:
+ page_header: ""
+ check_answer_label: "Buyer 1’s gender identity"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "Which of these best describes buyer 1’s gender identity?"
+
+ ethnic_group:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic group"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "What is buyer 1’s ethnic group?"
+
+ ethnic:
+ ethnic_background_black:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic background"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "Which of the following best describes buyer 1’s Black, African, Caribbean or Black British background?"
+ ethnic_background_asian:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic background"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "Which of the following best describes buyer 1’s Asian or Asian British background?"
+ ethnic_background_arab:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic background"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "Which of the following best describes buyer 1’s Arab background?"
+ ethnic_background_mixed:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic background"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "Which of the following best describes buyer 1’s Mixed or Multiple ethnic groups background?"
+ ethnic_background_white:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic background"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "Which of the following best describes buyer 1’s White background?"
+
+ national:
+ page_header: ""
+ check_answer_label: "Buyer 1’s nationality"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "What is buyer 1’s nationality?"
+
+ ecstat1:
+ page_header: ""
+ check_answer_label: "Buyer 1's working situation"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "Which of these best describes buyer 1's working situation?"
+
+ buy1livein:
+ page_header: ""
+ check_answer_label: "Will buyer 1 live in the property?"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "Will buyer 1 live in the property?"
+
+ relat2:
+ buyer:
+ page_header: ""
+ check_answer_label: "Buyer 2's relationship to buyer 1"
+ hint_text: ""
+ question_text: "What is buyer 2's relationship to buyer 1?"
+ person:
+ page_header: ""
+ check_answer_label: "Person 2’s relationship to Buyer 1"
+ hint_text: ""
+ question_text: "What is Person 2’s relationship to Buyer 1?"
+
+ age2:
+ buyer:
+ page_header: ""
+ age2_known:
+ check_answer_label: "Buyer 2’s age"
+ hint_text: ""
+ question_text: "Do you know buyer 2’s age?"
+ age2:
+ check_answer_label: "Buyer 2’s age"
+ hint_text: ""
+ question_text: "Age"
+ person:
+ page_header: ""
+ age2_known:
+ check_answer_label: "Person 2’s age known?"
+ hint_text: ""
+ question_text: "Do you know person 2’s age?"
+ age:
+ check_answer_label: "Person 2’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex2:
+ buyer:
+ page_header: ""
+ check_answer_label: "Buyer 2’s gender identity"
+ hint_text: ""
+ question_text: "Which of these best describes buyer 2’s gender identity?"
+ person:
+ page_header: ""
+ check_answer_label: "Person 2’s gender identity"
+ hint_text: ""
+ question_text: "Which of these best describes Person 2’s gender identity?"
+
+ ethnic_group2:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic group"
+ hint_text: ""
+ question_text: "What is buyer 2’s ethnic group?"
+
+ ethnicbuy2:
+ ethnic_background_black:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 2’s Black, African, Caribbean or Black British background?"
+ ethnic_background_asian:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 2’s Asian or Asian British background?"
+ ethnic_background_arab:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 2’s Arab background?"
+ ethnic_background_mixed:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 2’s Mixed or Multiple ethnic groups background?"
+ ethnic_background_white:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 2’s White background?"
+
+ nationalbuy2:
+ page_header: ""
+ check_answer_label: "Buyer 2’s nationality"
+ hint_text: ""
+ question_text: "What is buyer 2’s nationality?"
+
+ ecstat2:
+ buyer:
+ page_header: ""
+ check_answer_label: "Buyer 2's working situation"
+ hint_text: ""
+ question_text: "Which of these best describes buyer 2's working situation?"
+ person:
+ page_header: ""
+ check_answer_label: "Person 2’s working situation"
+ hint_text: ""
+ question_text: "Which of these best describes Person 2’s working situation?"
+
+ buy2livein:
+ page_header: ""
+ check_answer_label: "Will buyer 2 live in the property?"
+ hint_text: ""
+ question_text: "Will buyer 2 live in the property?"
+
+ hholdcount:
+ joint_purchase:
+ page_header: ""
+ check_answer_label: "Number of other people living in the property"
+ hint_text: "You can provide details for a maximum of 4 other people for a joint purchase."
+ question_text: "Besides the buyers, how many other people live or will live in the property?"
+ not_joint_purchase:
+ page_header: ""
+ check_answer_label: "Number of other people living in the property"
+ hint_text: "You can provide details for a maximum of 5 other people if there is only one buyer."
+ question_text: "Besides the buyer, how many other people live or will live in the property?"
+
+ details_known_2:
+ page_header: ""
+ check_answer_label: "Details known for person 2?"
+ hint_text: ""
+ question_text: "Do you know the details for person 2?"
+
+ details_known_3:
+ page_header: ""
+ check_answer_label: "Details known for person 3?"
+ hint_text: ""
+ question_text: "Do you know the details for person 3?"
+
+ relat3:
+ page_header: ""
+ check_answer_label: "Person 3’s relationship to Buyer 1"
+ hint_text: ""
+ question_text: "What is Person 3’s relationship to Buyer 1?"
+
+ age3:
+ page_header: ""
+ age3_known:
+ check_answer_label: "Person 3’s age known?"
+ hint_text: ""
+ question_text: "Do you know person 3’s age?"
+ age3:
+ check_answer_label: "Person 3’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex3:
+ page_header: ""
+ check_answer_label: "Person 3’s gender identity"
+ hint_text: ""
+ question_text: "Which of these best describes Person 3’s gender identity?"
+
+ ecstat3:
+ page_header: ""
+ check_answer_label: "Person 3’s working situation"
+ hint_text: ""
+ question_text: "Which of these best describes Person 3’s working situation?"
+
+ details_known_4:
+ page_header: ""
+ check_answer_label: "Details known for person 4?"
+ hint_text: ""
+ question_text: "Do you know the details for person 4?"
+
+ relat4:
+ page_header: ""
+ check_answer_label: "Person 4’s relationship to Buyer 1"
+ hint_text: ""
+ question_text: "What is Person 4’s relationship to Buyer 1?"
+
+ age4:
+ page_header: ""
+ age4_known:
+ check_answer_label: "Person 4’s age known?"
+ hint_text: ""
+ question_text: "Do you know person 4’s age?"
+ age4:
+ check_answer_label: "Person 4’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex4:
+ page_header: ""
+ check_answer_label: "Person 4’s gender identity"
+ hint_text: ""
+ question_text: "Which of these best describes Person 4’s gender identity?"
+
+ ecstat4:
+ page_header: ""
+ check_answer_label: "Person 4’s working situation"
+ hint_text: ""
+ question_text: "Which of these best describes Person 4’s working situation?"
+
+ details_known_5:
+ page_header: ""
+ check_answer_label: "Details known for person 5?"
+ hint_text: ""
+ question_text: "Do you know the details for person 5?"
+
+ relat5:
+ page_header: ""
+ check_answer_label: "Person 5’s relationship to Buyer 1"
+ hint_text: ""
+ question_text: "What is Person 5’s relationship to Buyer 1?"
+
+ age5:
+ page_header: ""
+ age5_known:
+ check_answer_label: "Person 5’s age known?"
+ hint_text: ""
+ question_text: "Do you know person 5’s age?"
+ age5:
+ check_answer_label: "Person 5’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex5:
+ page_header: ""
+ check_answer_label: "Person 5’s gender identity"
+ hint_text: ""
+ question_text: "Which of these best describes Person 5’s gender identity?"
+
+ ecstat5:
+ page_header: ""
+ check_answer_label: "Person 5’s working situation"
+ hint_text: ""
+ question_text: "Which of these best describes Person 5’s working situation?"
+
+ details_known_6:
+ page_header: ""
+ check_answer_label: "Details known for person 6?"
+ hint_text: ""
+ question_text: "Do you know the details for person 6?"
+
+ relat6:
+ page_header: ""
+ check_answer_label: "Person 6’s relationship to Buyer 1"
+ hint_text: ""
+ question_text: "What is Person 6’s relationship to Buyer 1?"
+
+ age6:
+ page_header: ""
+ age6_known:
+ check_answer_label: "Person 6’s age known?"
+ hint_text: ""
+ question_text: "Do you know person 6’s age?"
+ age6:
+ check_answer_label: "Person 6’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex6:
+ page_header: ""
+ check_answer_label: "Person 6’s gender identity"
+ hint_text: ""
+ question_text: "Which of these best describes Person 6’s gender identity?"
+
+ ecstat6:
+ page_header: ""
+ check_answer_label: "Person 6’s working situation"
+ hint_text: ""
+ question_text: "Which of these best describes Person 6’s working situation?"
diff --git a/config/locales/forms/2023/sales/soft_validations.en.yml b/config/locales/forms/2023/sales/soft_validations.en.yml
index a0912555a..3467b9432 100644
--- a/config/locales/forms/2023/sales/soft_validations.en.yml
+++ b/config/locales/forms/2023/sales/soft_validations.en.yml
@@ -3,25 +3,51 @@ en:
2023:
sales:
soft_validations:
- income1_value_check:
+ retirement_value_check:
+ max:
+ page_header: ""
+ check_answer_label: "Retirement confirmation"
+ hint_text: ""
+ question_text: "Are you sure this person isn't retired?"
+ title_text: "You told us this person is over 66 and not retired."
+ informative_text: "The minimum expected retirement age in England is 66."
+ min:
+ page_header: ""
+ check_answer_label: "Retirement confirmation"
+ hint_text: ""
+ question_text: "Are you sure this person is retired?"
+ title_text: "You told us this person is aged %{age} years and retired."
+ informative_text: "The minimum expected retirement age in England is 66."
+ old_persons_shared_ownership_value_check:
page_header: ""
+ check_answer_label: "Shared ownership confirmation"
+ hint_text: ""
+ question_text: "Are you sure this is correct?"
+ title_text:
+ joint_purchase: "You told us the buyers are using the Older Persons Shared Ownership scheme."
+ not_joint_purchase: "You told us the buyer is using the Older Persons Shared Ownership scheme."
+ informative_text: "At least one buyer must be aged 65 years and over to use this scheme."
+ income1_value_check:
check_answer_label: "Buyer 1 income confirmation"
hint_text: ""
question_text: "Are you sure this is correct?"
min:
+ page_header: ""
title_text: "You told us income was %{income}."
informative_text: "This is less than we would expect for someone in this working situation."
max:
+ page_header: ""
title_text: "You told us the income of buyer 1 is %{income}. This seems high. Are you sure this is correct?"
income2_value_check:
- page_header: ""
check_answer_label: "Buyer 2 income confirmation"
hint_text: ""
question_text: "Are you sure this is correct?"
min:
+ page_header: ""
title_text: "You told us income was %{income}."
informative_text: "This is less than we would expect for someone in this working situation."
max:
+ page_header: ""
title_text: "You told us the income of buyer 2 is %{income}. This seems high. Are you sure this is correct?"
combined_income_value_check:
page_header: ""
@@ -64,3 +90,39 @@ en:
hint_text: ""
question_text: "You told us that someone in the household uses a wheelchair."
title_text: "You told us that someone in the household uses a wheelchair."
+ buyer_livein_value_check:
+ buyer1:
+ page_header: ""
+ check_answer_label: "Buyer live in confirmation"
+ hint_text: ""
+ question_text: "Are you sure this is correct?"
+ title_text: "You told us that buyer 1 will not live in the property."
+ informative_text: "For %{ownership_scheme} types, the buyer usually lives in the property."
+ buyer2:
+ page_header: ""
+ check_answer_label: "Buyer live in confirmation"
+ hint_text: ""
+ question_text: "Are you sure this is correct?"
+ title_text: "You told us that buyer 2 will not live in the property."
+ informative_text: "For %{ownership_scheme} types, the buyer usually lives in the property."
+ student_not_child_value_check:
+ page_header: ""
+ check_answer_label: "Student not a child confirmation"
+ hint_text: ""
+ question_text: "Are you sure this person is not a child?"
+ title_text: "You told us this person is a student aged between 16 and 19."
+ informative_text: "Are you sure this person is not a child?"
+ partner_under_16_value_check:
+ page_header: ""
+ check_answer_label: "Partner under 16 confirmation"
+ hint_text: ""
+ question_text: "Are you sure this is correct?"
+ title_text: "You told us this person is aged %{age} years and has 'Partner' relationship to buyer 1."
+ informative_text: "Are you sure this is correct?"
+ multiple_partners_value_check:
+ page_header: ""
+ check_answer_label: "Multiple partners confirmation"
+ hint_text: ""
+ question_text: "Are you sure this is correct?"
+ title_text: "You told us there are more than 1 persons with 'Partner' relationship to buyer 1."
+ informative_text: "Are you sure this is correct?"
diff --git a/config/locales/forms/2024/sales/household_characteristics.en.yml b/config/locales/forms/2024/sales/household_characteristics.en.yml
new file mode 100644
index 000000000..22f9427e8
--- /dev/null
+++ b/config/locales/forms/2024/sales/household_characteristics.en.yml
@@ -0,0 +1,345 @@
+en:
+ forms:
+ 2024:
+ sales:
+ household_characteristics:
+ age1:
+ page_header: ""
+ age1_known:
+ check_answer_label: "Buyer 1’s age"
+ hint_text: "Buyer 1 is the person in the household who does the most paid work. If it’s a joint purchase and the buyers do the same amount of paid work, buyer 1 is whoever is the oldest."
+ question_text: "Do you know buyer 1’s age?"
+ age1:
+ check_answer_label: "Buyer 1’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex1:
+ page_header: ""
+ check_answer_label: "Buyer 1’s gender identity"
+ hint_text: "This should be however they personally choose to identify from the options below. This may or may not be the same as their biological sex or the sex they were assigned at birth."
+ question_text: "Which of these best describes buyer 1’s gender identity?"
+
+ ethnic_group:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic group"
+ hint_text: ""
+ question_text: "What is buyer 1’s ethnic group?"
+
+ ethnic:
+ ethnic_background_black:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 1’s Black, African, Caribbean or Black British background?"
+ ethnic_background_asian:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 1’s Asian or Asian British background?"
+ ethnic_background_arab:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 1’s Arab background?"
+ ethnic_background_mixed:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 1’s Mixed or Multiple ethnic groups background?"
+ ethnic_background_white:
+ page_header: ""
+ check_answer_label: "Buyer 1’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 1’s White background?"
+
+ nationality_all_group:
+ page_header: ""
+ check_answer_label: "Buyer 1’s nationality"
+ hint_text: "If buyer 1 is a dual national of the United Kingdom and another country, enter United Kingdom. If they are a dual national of two other countries, the buyer should decide which country to enter."
+ question_text: "What is buyer 1’s nationality?"
+
+ nationality_all:
+ page_header: ""
+ check_answer_label: "Buyer 1’s nationality"
+ hint_text: ""
+ question_text: "Enter a nationality"
+
+ ecstat1:
+ page_header: ""
+ check_answer_label: "Buyer 1's working situation"
+ hint_text: ""
+ question_text: "Which of these best describes buyer 1's working situation?"
+
+ buy1livein:
+ page_header: ""
+ check_answer_label: "Will buyer 1 live in the property?"
+ hint_text: ""
+ question_text: "Will buyer 1 live in the property?"
+
+ relat2:
+ buyer:
+ page_header: ""
+ check_answer_label: "Buyer 2's relationship to buyer 1"
+ hint_text: ""
+ question_text: "What is buyer 2's relationship to buyer 1?"
+ person:
+ page_header: ""
+ check_answer_label: "Person 2’s relationship to Buyer 1"
+ hint_text: ""
+ question_text: "What is Person 2’s relationship to Buyer 1?"
+
+ age2:
+ buyer:
+ page_header: ""
+ age2_known:
+ check_answer_label: "Buyer 2’s age"
+ hint_text: ""
+ question_text: "Do you know buyer 2’s age?"
+ age2:
+ check_answer_label: "Buyer 2’s age"
+ hint_text: ""
+ question_text: "Age"
+ person:
+ page_header: ""
+ age2_known:
+ check_answer_label: "Person 2’s age known?"
+ hint_text: ""
+ question_text: "Do you know person 2’s age?"
+ age2:
+ check_answer_label: "Person 2’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex2:
+ buyer:
+ page_header: ""
+ check_answer_label: "Buyer 2’s gender identity"
+ hint_text: "This should be however they personally choose to identify from the options below. This may or may not be the same as their biological sex or the sex they were assigned at birth."
+ question_text: "Which of these best describes buyer 2’s gender identity?"
+ person:
+ page_header: ""
+ check_answer_label: "Person 2’s gender identity"
+ hint_text: "This should be however they personally choose to identify from the options below. This may or may not be the same as their biological sex or the sex they were assigned at birth."
+ question_text: "Which of these best describes Person 2’s gender identity?"
+
+ ethnic_group2:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic group"
+ hint_text: ""
+ question_text: "What is buyer 2’s ethnic group?"
+
+ ethnicbuy2:
+ ethnic_background_black:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 2’s Black, African, Caribbean or Black British background?"
+ ethnic_background_asian:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 2’s Asian or Asian British background?"
+ ethnic_background_arab:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 2’s Arab background?"
+ ethnic_background_mixed:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 2’s Mixed or Multiple ethnic groups background?"
+ ethnic_background_white:
+ page_header: ""
+ check_answer_label: "Buyer 2’s ethnic background"
+ hint_text: ""
+ question_text: "Which of the following best describes buyer 2’s White background?"
+
+ nationality_all_buyer2_group:
+ page_header: ""
+ check_answer_label: "Buyer 2’s nationality"
+ hint_text: "If buyer 1 is a dual national of the United Kingdom and another country, enter United Kingdom. If they are a dual national of two other countries, the buyer should decide which country to enter."
+ question_text: "What is buyer 2’s nationality?"
+
+ nationality_all_buyer2:
+ page_header: ""
+ check_answer_label: "Buyer 2’s nationality"
+ hint_text: ""
+ question_text: "Enter a nationality"
+
+ ecstat2:
+ buyer:
+ page_header: ""
+ check_answer_label: "Buyer 2's working situation"
+ hint_text: ""
+ question_text: "Which of these best describes buyer 2's working situation?"
+ person:
+ page_header: ""
+ check_answer_label: "Person 2’s working situation"
+ hint_text: ""
+ question_text: "Which of these best describes Person 2’s working situation?"
+
+ buy2livein:
+ page_header: ""
+ check_answer_label: "Will buyer 2 live in the property?"
+ hint_text: ""
+ question_text: "Will buyer 2 live in the property?"
+
+ hholdcount:
+ joint_purchase:
+ page_header: ""
+ check_answer_label: "Number of other people living in the property"
+ hint_text: "You can provide details for a maximum of 4 other people for a joint purchase."
+ question_text: "Besides the buyers, how many other people live or will live in the property?"
+ not_joint_purchase:
+ page_header: ""
+ check_answer_label: "Number of other people living in the property"
+ hint_text: "You can provide details for a maximum of 5 other people if there is only one buyer."
+ question_text: "Besides the buyer, how many other people live or will live in the property?"
+
+ details_known_2:
+ page_header: ""
+ check_answer_label: "Details known for person 2?"
+ hint_text: ""
+ question_text: "Do you know the details for person 2?"
+
+ details_known_3:
+ page_header: ""
+ check_answer_label: "Details known for person 3?"
+ hint_text: ""
+ question_text: "Do you know the details for person 3?"
+
+ relat3:
+ page_header: ""
+ check_answer_label: "Person 3’s relationship to Buyer 1"
+ hint_text: ""
+ question_text: "What is Person 3’s relationship to Buyer 1?"
+
+ age3:
+ page_header: ""
+ age3_known:
+ check_answer_label: "Person 3’s age known?"
+ hint_text: ""
+ question_text: "Do you know person 3’s age?"
+ age3:
+ check_answer_label: "Person 3’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex3:
+ page_header: ""
+ check_answer_label: "Person 3’s gender identity"
+ hint_text: "This should be however they personally choose to identify from the options below. This may or may not be the same as their biological sex or the sex they were assigned at birth."
+ question_text: "Which of these best describes Person 3’s gender identity?"
+
+ ecstat3:
+ page_header: ""
+ check_answer_label: "Person 3’s working situation"
+ hint_text: ""
+ question_text: "Which of these best describes Person 3’s working situation?"
+
+ details_known_4:
+ page_header: ""
+ check_answer_label: "Details known for person 4?"
+ hint_text: ""
+ question_text: "Do you know the details for person 4?"
+
+ relat4:
+ page_header: ""
+ check_answer_label: "Person 4’s relationship to Buyer 1"
+ hint_text: ""
+ question_text: "What is Person 4’s relationship to Buyer 1?"
+
+ age4:
+ page_header: ""
+ age4_known:
+ check_answer_label: "Person 4’s age known?"
+ hint_text: ""
+ question_text: "Do you know person 4’s age?"
+ age4:
+ check_answer_label: "Person 4’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex4:
+ page_header: ""
+ check_answer_label: "Person 4’s gender identity"
+ hint_text: "This should be however they personally choose to identify from the options below. This may or may not be the same as their biological sex or the sex they were assigned at birth."
+ question_text: "Which of these best describes Person 4’s gender identity?"
+
+ ecstat4:
+ page_header: ""
+ check_answer_label: "Person 4’s working situation"
+ hint_text: ""
+ question_text: "Which of these best describes Person 4’s working situation?"
+
+ details_known_5:
+ page_header: ""
+ check_answer_label: "Details known for person 5?"
+ hint_text: ""
+ question_text: "Do you know the details for person 5?"
+
+ relat5:
+ page_header: ""
+ check_answer_label: "Person 5’s relationship to Buyer 1"
+ hint_text: ""
+ question_text: "What is Person 5’s relationship to Buyer 1?"
+
+ age5:
+ page_header: ""
+ age5_known:
+ check_answer_label: "Person 5’s age known?"
+ hint_text: ""
+ question_text: "Do you know person 5’s age?"
+ age5:
+ check_answer_label: "Person 5’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex5:
+ page_header: ""
+ check_answer_label: "Person 5’s gender identity"
+ hint_text: "This should be however they personally choose to identify from the options below. This may or may not be the same as their biological sex or the sex they were assigned at birth."
+ question_text: "Which of these best describes Person 5’s gender identity?"
+
+ ecstat5:
+ page_header: ""
+ check_answer_label: "Person 5’s working situation"
+ hint_text: ""
+ question_text: "Which of these best describes Person 5’s working situation?"
+
+ details_known_6:
+ page_header: ""
+ check_answer_label: "Details known for person 6?"
+ hint_text: ""
+ question_text: "Do you know the details for person 6?"
+
+ relat6:
+ page_header: ""
+ check_answer_label: "Person 6’s relationship to Buyer 1"
+ hint_text: ""
+ question_text: "What is Person 6’s relationship to Buyer 1?"
+
+ age6:
+ page_header: ""
+ age6_known:
+ check_answer_label: "Person 6’s age known?"
+ hint_text: ""
+ question_text: "Do you know person 6’s age?"
+ age6:
+ check_answer_label: "Person 6’s age"
+ hint_text: ""
+ question_text: "Age"
+
+ sex6:
+ page_header: ""
+ check_answer_label: "Person 6’s gender identity"
+ hint_text: "This should be however they personally choose to identify from the options below. This may or may not be the same as their biological sex or the sex they were assigned at birth."
+ question_text: "Which of these best describes Person 6’s gender identity?"
+
+ ecstat6:
+ page_header: ""
+ check_answer_label: "Person 6’s working situation"
+ hint_text: ""
+ question_text: "Which of these best describes Person 6’s working situation?"
diff --git a/config/locales/forms/2024/sales/soft_validations.en.yml b/config/locales/forms/2024/sales/soft_validations.en.yml
index 2c7ac6e3e..39af6cb38 100644
--- a/config/locales/forms/2024/sales/soft_validations.en.yml
+++ b/config/locales/forms/2024/sales/soft_validations.en.yml
@@ -3,25 +3,51 @@ en:
2024:
sales:
soft_validations:
- income1_value_check:
+ retirement_value_check:
+ max:
+ page_header: ""
+ check_answer_label: "Retirement confirmation"
+ hint_text: ""
+ question_text: "Are you sure this person isn't retired?"
+ title_text: "You told us this person is over 66 and not retired."
+ informative_text: "The minimum expected retirement age in England is 66."
+ min:
+ page_header: ""
+ check_answer_label: "Retirement confirmation"
+ hint_text: ""
+ question_text: "Are you sure this person is retired?"
+ title_text: "You told us this person is aged %{age} years and retired."
+ informative_text: "The minimum expected retirement age in England is 66."
+ old_persons_shared_ownership_value_check:
page_header: ""
+ check_answer_label: "Shared ownership confirmation"
+ hint_text: ""
+ question_text: "Are you sure this is correct?"
+ title_text:
+ joint_purchase: "You told us the buyers are using the Older Persons Shared Ownership scheme."
+ not_joint_purchase: "You told us the buyer is using the Older Persons Shared Ownership scheme."
+ informative_text: "At least one buyer must be aged 65 years and over to use this scheme."
+ income1_value_check:
check_answer_label: "Buyer 1 income confirmation"
hint_text: ""
question_text: "Are you sure this is correct?"
min:
+ page_header: ""
title_text: "You told us income was %{income}."
informative_text: "This is less than we would expect for someone in this working situation."
max:
+ page_header: ""
title_text: "You told us the income of buyer 1 is %{income}. This seems high. Are you sure this is correct?"
income2_value_check:
- page_header: ""
check_answer_label: "Buyer 2 income confirmation"
hint_text: ""
question_text: "Are you sure this is correct?"
min:
+ page_header: ""
title_text: "You told us income was %{income}."
informative_text: "This is less than we would expect for someone in this working situation."
max:
+ page_header: ""
title_text: "You told us the income of buyer 2 is %{income}. This seems high. Are you sure this is correct?"
combined_income_value_check:
page_header: ""
@@ -64,3 +90,39 @@ en:
hint_text: ""
question_text: "You told us that someone in the household uses a wheelchair."
title_text: "You told us that someone in the household uses a wheelchair."
+ buyer_livein_value_check:
+ buyer1:
+ page_header: ""
+ check_answer_label: "Buyer live in confirmation"
+ hint_text: ""
+ question_text: "Are you sure this is correct?"
+ title_text: "You told us that buyer 1 will not live in the property."
+ informative_text: "For %{ownership_scheme} types, the buyer usually lives in the property."
+ buyer2:
+ page_header: ""
+ check_answer_label: "Buyer live in confirmation"
+ hint_text: ""
+ question_text: "Are you sure this is correct?"
+ title_text: "You told us that buyer 2 will not live in the property."
+ informative_text: "For %{ownership_scheme} types, the buyer usually lives in the property."
+ student_not_child_value_check:
+ page_header: ""
+ check_answer_label: "Student not a child confirmation"
+ hint_text: ""
+ question_text: "Are you sure this person is not a child?"
+ title_text: "You told us this person is a student aged between 16 and 19."
+ informative_text: "Are you sure this person is not a child?"
+ partner_under_16_value_check:
+ page_header: ""
+ check_answer_label: "Partner under 16 confirmation"
+ hint_text: ""
+ question_text: "Are you sure this is correct?"
+ title_text: "You told us this person is aged %{age} years and has 'Partner' relationship to buyer 1."
+ informative_text: "Are you sure this is correct?"
+ multiple_partners_value_check:
+ page_header: ""
+ check_answer_label: "Multiple partners confirmation"
+ hint_text: ""
+ question_text: "Are you sure this is correct?"
+ title_text: "You told us there are more than 1 persons with 'Partner' relationship to buyer 1."
+ informative_text: "Are you sure this is correct?"
diff --git a/spec/models/form/sales/pages/buyer_interview_spec.rb b/spec/models/form/sales/pages/buyer_interview_spec.rb
index ce72974e9..24704526d 100644
--- a/spec/models/form/sales/pages/buyer_interview_spec.rb
+++ b/spec/models/form/sales/pages/buyer_interview_spec.rb
@@ -5,7 +5,8 @@ RSpec.describe Form::Sales::Pages::BuyerInterview, type: :model do
let(:page_id) { "buyer_interview" }
let(:page_definition) { nil }
- let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2023, 4, 1))) }
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2023, 4, 1), start_year_after_2024?: false) }
+ let(:subsection) { instance_double(Form::Subsection, form:, id: "setup") }
it "has correct subsection" do
expect(page.subsection).to eq(subsection)
@@ -23,19 +24,43 @@ RSpec.describe Form::Sales::Pages::BuyerInterview, type: :model do
expect(page.description).to be_nil
end
- context "when there are joint buyers" do
- subject(:page) { described_class.new(page_id, page_definition, subsection, joint_purchase: true) }
+ context "when form is before 2024" do
+ let(:subsection) { instance_double(Form::Subsection, form:, id: "household_characteristics") }
- it "has the expected copy_key" do
- expect(page.copy_key).to eq("sales.setup.noint.joint_purchase")
+ context "when there are joint buyers" do
+ subject(:page) { described_class.new(page_id, page_definition, subsection, joint_purchase: true) }
+
+ it "has the expected copy_key" do
+ expect(page.copy_key).to eq("sales.household_characteristics.noint.joint_purchase")
+ end
+ end
+
+ context "when there is a single buyer" do
+ subject(:page) { described_class.new(page_id, page_definition, subsection, joint_purchase: false) }
+
+ it "has the expected copy_key" do
+ expect(page.copy_key).to eq("sales.household_characteristics.noint.not_joint_purchase")
+ end
end
end
- context "when there is a single buyer" do
- subject(:page) { described_class.new(page_id, page_definition, subsection, joint_purchase: false) }
+ context "when form is after 2024" do
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_after_2024?: true) }
+
+ context "when there are joint buyers" do
+ subject(:page) { described_class.new(page_id, page_definition, subsection, joint_purchase: true) }
+
+ it "has the expected copy_key" do
+ expect(page.copy_key).to eq("sales.setup.noint.joint_purchase")
+ end
+ end
+
+ context "when there is a single buyer" do
+ subject(:page) { described_class.new(page_id, page_definition, subsection, joint_purchase: false) }
- it "has the expected copy_key" do
- expect(page.copy_key).to eq("sales.setup.noint.not_joint_purchase")
+ it "has the expected copy_key" do
+ expect(page.copy_key).to eq("sales.setup.noint.not_joint_purchase")
+ end
end
end
end
diff --git a/spec/models/form/sales/pages/buyer_live_in_value_check_spec.rb b/spec/models/form/sales/pages/buyer_live_in_value_check_spec.rb
index 4bce29312..72234b6d5 100644
--- a/spec/models/form/sales/pages/buyer_live_in_value_check_spec.rb
+++ b/spec/models/form/sales/pages/buyer_live_in_value_check_spec.rb
@@ -6,7 +6,8 @@ RSpec.describe Form::Sales::Pages::BuyerLiveInValueCheck, type: :model do
let(:page_id) { "buyer_1_live_in_value_check" }
let(:page_definition) { nil }
let(:person_index) { 1 }
- let(:subsection) { instance_double(Form::Subsection) }
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) }
+ let(:subsection) { instance_double(Form::Subsection, form:) }
it "has correct subsection" do
expect(page.subsection).to eq(subsection)
@@ -34,7 +35,7 @@ RSpec.describe Form::Sales::Pages::BuyerLiveInValueCheck, type: :model do
it "has the correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.buyer1_livein_wrong_for_ownership_type.title_text",
+ "translation" => "forms.2024.sales.soft_validations.buyer_livein_value_check.buyer1.title_text",
"arguments" => [{ "key" => "ownership_scheme", "label" => false, "i18n_template" => "ownership_scheme" }],
})
end
@@ -56,7 +57,7 @@ RSpec.describe Form::Sales::Pages::BuyerLiveInValueCheck, type: :model do
it "has the correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.buyer2_livein_wrong_for_ownership_type.title_text",
+ "translation" => "forms.2024.sales.soft_validations.buyer_livein_value_check.buyer2.title_text",
"arguments" => [{ "key" => "ownership_scheme", "label" => false, "i18n_template" => "ownership_scheme" }],
})
end
diff --git a/spec/models/form/sales/pages/multiple_partners_value_check_spec.rb b/spec/models/form/sales/pages/multiple_partners_value_check_spec.rb
index 890a24e6a..e3ee322a5 100644
--- a/spec/models/form/sales/pages/multiple_partners_value_check_spec.rb
+++ b/spec/models/form/sales/pages/multiple_partners_value_check_spec.rb
@@ -4,7 +4,8 @@ RSpec.describe Form::Sales::Pages::MultiplePartnersValueCheck, type: :model do
subject(:page) { described_class.new(page_id, page_definition, subsection, person_index:) }
let(:page_definition) { nil }
- let(:subsection) { instance_double(Form::Subsection) }
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) }
+ let(:subsection) { instance_double(Form::Subsection, form:) }
let(:person_index) { 1 }
let(:page_id) { "multiple_partners_value_check" }
@@ -39,13 +40,13 @@ RSpec.describe Form::Sales::Pages::MultiplePartnersValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.multiple_partners_sales.title",
+ "translation" => "forms.2024.sales.soft_validations.multiple_partners_value_check.title_text",
"arguments" => [],
})
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.multiple_partners_value_check.informative_text" })
end
it "has correct interruption_screen_question_ids" do
@@ -71,13 +72,13 @@ RSpec.describe Form::Sales::Pages::MultiplePartnersValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.multiple_partners_sales.title",
+ "translation" => "forms.2024.sales.soft_validations.multiple_partners_value_check.title_text",
"arguments" => [],
})
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.multiple_partners_value_check.informative_text" })
end
it "has correct interruption_screen_question_ids" do
diff --git a/spec/models/form/sales/pages/old_persons_shared_ownership_value_check_spec.rb b/spec/models/form/sales/pages/old_persons_shared_ownership_value_check_spec.rb
index 8bc20cef7..19292db35 100644
--- a/spec/models/form/sales/pages/old_persons_shared_ownership_value_check_spec.rb
+++ b/spec/models/form/sales/pages/old_persons_shared_ownership_value_check_spec.rb
@@ -5,7 +5,8 @@ RSpec.describe Form::Sales::Pages::OldPersonsSharedOwnershipValueCheck, type: :m
let(:page_id) { "old_persons_shared_ownership_value_check" }
let(:page_definition) { nil }
- let(:subsection) { instance_double(Form::Subsection) }
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) }
+ let(:subsection) { instance_double(Form::Subsection, form:) }
it "has correct subsection" do
expect(page.subsection).to eq(subsection)
@@ -34,13 +35,13 @@ RSpec.describe Form::Sales::Pages::OldPersonsSharedOwnershipValueCheck, type: :m
it "has the correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.old_persons_shared_ownership.title_text.one",
+ "translation" => "forms.2024.sales.soft_validations.old_persons_shared_ownership_value_check.title_text.not_joint_purchase",
"arguments" => [],
})
end
it "has the correct informative_text" do
- expect(page.informative_text).to eq({ "arguments" => [], "translation" => "soft_validations.old_persons_shared_ownership.hint_text" })
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.old_persons_shared_ownership_value_check.informative_text" })
end
it "has the correct interruption_screen_question_ids" do
@@ -52,7 +53,7 @@ RSpec.describe Form::Sales::Pages::OldPersonsSharedOwnershipValueCheck, type: :m
it "has the correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.old_persons_shared_ownership.title_text.two",
+ "translation" => "forms.2024.sales.soft_validations.old_persons_shared_ownership_value_check.title_text.joint_purchase",
"arguments" => [],
})
end
diff --git a/spec/models/form/sales/pages/partner_under16_value_check_spec.rb b/spec/models/form/sales/pages/partner_under16_value_check_spec.rb
index fe11bdc86..5785ab900 100644
--- a/spec/models/form/sales/pages/partner_under16_value_check_spec.rb
+++ b/spec/models/form/sales/pages/partner_under16_value_check_spec.rb
@@ -4,7 +4,8 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
subject(:page) { described_class.new(page_id, page_definition, subsection, person_index:) }
let(:page_definition) { nil }
- let(:subsection) { instance_double(Form::Subsection) }
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) }
+ let(:subsection) { instance_double(Form::Subsection, form:) }
let(:person_index) { 1 }
let(:page_id) { "partner_under_16_value_check" }
@@ -39,7 +40,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.partner_under_16_sales.title",
+ "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.title_text",
"arguments" => [
{
"key" => "age1",
@@ -51,7 +52,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.informative_text" })
end
it "has correct interruption_screen_question_ids" do
@@ -77,7 +78,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.partner_under_16_sales.title",
+ "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.title_text",
"arguments" => [
{
"key" => "age2",
@@ -89,7 +90,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.informative_text" })
end
it "has correct interruption_screen_question_ids" do
@@ -115,7 +116,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.partner_under_16_sales.title",
+ "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.title_text",
"arguments" => [
{
"key" => "age3",
@@ -127,7 +128,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.informative_text" })
end
it "has correct interruption_screen_question_ids" do
@@ -153,7 +154,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.partner_under_16_sales.title",
+ "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.title_text",
"arguments" => [
{
"key" => "age4",
@@ -165,7 +166,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.informative_text" })
end
it "has correct interruption_screen_question_ids" do
@@ -191,7 +192,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.partner_under_16_sales.title",
+ "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.title_text",
"arguments" => [
{
"key" => "age5",
@@ -203,7 +204,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.informative_text" })
end
it "has correct interruption_screen_question_ids" do
@@ -229,7 +230,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.partner_under_16_sales.title",
+ "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.title_text",
"arguments" => [
{
"key" => "age6",
@@ -241,7 +242,7 @@ RSpec.describe Form::Sales::Pages::PartnerUnder16ValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.partner_under_16_value_check.informative_text" })
end
it "has correct interruption_screen_question_ids" do
diff --git a/spec/models/form/sales/pages/person_student_not_child_value_check_spec.rb b/spec/models/form/sales/pages/person_student_not_child_value_check_spec.rb
index 9185f9f1c..43ba0af49 100644
--- a/spec/models/form/sales/pages/person_student_not_child_value_check_spec.rb
+++ b/spec/models/form/sales/pages/person_student_not_child_value_check_spec.rb
@@ -4,7 +4,8 @@ RSpec.describe Form::Sales::Pages::PersonStudentNotChildValueCheck, type: :model
subject(:page) { described_class.new(page_id, page_definition, subsection, person_index:) }
let(:page_definition) { nil }
- let(:subsection) { instance_double(Form::Subsection) }
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) }
+ let(:subsection) { instance_double(Form::Subsection, form:) }
let(:person_index) { 2 }
let(:page_id) { "person_2_student_not_child_value_check" }
@@ -23,12 +24,12 @@ RSpec.describe Form::Sales::Pages::PersonStudentNotChildValueCheck, type: :model
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.student_not_child.title_text",
+ "translation" => "forms.2024.sales.soft_validations.student_not_child_value_check.title_text",
})
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.student_not_child_value_check.informative_text" })
end
it "has correct questions" do
diff --git a/spec/models/form/sales/pages/privacy_notice_spec.rb b/spec/models/form/sales/pages/privacy_notice_spec.rb
index 1d146f0af..7510e60d9 100644
--- a/spec/models/form/sales/pages/privacy_notice_spec.rb
+++ b/spec/models/form/sales/pages/privacy_notice_spec.rb
@@ -5,12 +5,11 @@ RSpec.describe Form::Sales::Pages::PrivacyNotice, type: :model do
let(:page_id) { "privacy_notice" }
let(:page_definition) { nil }
- let(:subsection) { instance_double(Form::Subsection) }
- let(:form) { instance_double(Form, start_date: Time.zone.local(2023, 4, 1)) }
+ let(:subsection) { instance_double(Form::Subsection, id: "setup") }
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2023, 4, 1), start_year_after_2024?: false) }
before do
allow(subsection).to receive(:form).and_return(form)
- allow(form).to receive(:start_year_after_2024?)
end
it "has correct subsection" do
@@ -32,8 +31,20 @@ RSpec.describe Form::Sales::Pages::PrivacyNotice, type: :model do
context "when there are joint buyers" do
subject(:page) { described_class.new(page_id, page_definition, subsection, joint_purchase: true) }
- it "has the expected copy_key" do
- expect(page.copy_key).to eq("sales.setup.privacynotice.joint_purchase")
+ context "when the form start year is before 2024" do
+ let(:subsection) { instance_double(Form::Subsection, id: "household_characteristics") }
+
+ it "has the expected copy_key" do
+ expect(page.copy_key).to eq("sales.household_characteristics.privacynotice.joint_purchase")
+ end
+ end
+
+ context "when the form start year is after 2024" do
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_after_2024?: true) }
+
+ it "has the expected copy_key" do
+ expect(page.copy_key).to eq("sales.setup.privacynotice.joint_purchase")
+ end
end
it "has correct depends_on" do
@@ -44,8 +55,20 @@ RSpec.describe Form::Sales::Pages::PrivacyNotice, type: :model do
context "when there is a single buyer" do
subject(:page) { described_class.new(page_id, page_definition, subsection, joint_purchase: false) }
- it "has the expected copy_key" do
- expect(page.copy_key).to eq("sales.setup.privacynotice.not_joint_purchase")
+ context "when the form start year is before 2024" do
+ let(:subsection) { instance_double(Form::Subsection, id: "household_characteristics") }
+
+ it "has the expected copy_key" do
+ expect(page.copy_key).to eq("sales.household_characteristics.privacynotice.not_joint_purchase")
+ end
+ end
+
+ context "when the form start year is after 2024" do
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_after_2024?: true) }
+
+ it "has the expected copy_key" do
+ expect(page.copy_key).to eq("sales.setup.privacynotice.not_joint_purchase")
+ end
end
it "has correct depends_on" do
diff --git a/spec/models/form/sales/pages/retirement_value_check_spec.rb b/spec/models/form/sales/pages/retirement_value_check_spec.rb
index 6df7a379b..e316250b5 100644
--- a/spec/models/form/sales/pages/retirement_value_check_spec.rb
+++ b/spec/models/form/sales/pages/retirement_value_check_spec.rb
@@ -4,7 +4,8 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
subject(:page) { described_class.new(page_id, page_definition, subsection, person_index:) }
let(:page_definition) { nil }
- let(:subsection) { instance_double(Form::Subsection) }
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1)) }
+ let(:subsection) { instance_double(Form::Subsection, form:) }
let(:person_index) { 1 }
let(:page_id) { "person_1_retirement_value_check" }
@@ -39,7 +40,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.retirement.min.title",
+ "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.title_text",
"arguments" => [
{
"key" => "age1",
@@ -51,7 +52,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.informative_text" })
end
it "has correct interruption_screen_question_ids" do
@@ -77,7 +78,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.retirement.min.title",
+ "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.title_text",
"arguments" => [
{
"key" => "age2",
@@ -89,7 +90,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.informative_text" })
end
it "has correct interruption_screen_question_ids" do
@@ -115,7 +116,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.retirement.min.title",
+ "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.title_text",
"arguments" => [
{
"key" => "age3",
@@ -127,7 +128,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.informative_text" })
end
it "has correct interruption_screen_question_ids" do
@@ -153,7 +154,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.retirement.min.title",
+ "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.title_text",
"arguments" => [
{
"key" => "age4",
@@ -165,7 +166,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.informative_text" })
end
it "has correct interruption_screen_question_ids" do
@@ -191,7 +192,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.retirement.min.title",
+ "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.title_text",
"arguments" => [
{
"key" => "age5",
@@ -203,7 +204,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.informative_text" })
end
it "has correct interruption_screen_question_ids" do
@@ -229,7 +230,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
it "has correct title_text" do
expect(page.title_text).to eq({
- "translation" => "soft_validations.retirement.min.title",
+ "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.title_text",
"arguments" => [
{
"key" => "age6",
@@ -241,7 +242,7 @@ RSpec.describe Form::Sales::Pages::RetirementValueCheck, type: :model do
end
it "has correct informative_text" do
- expect(page.informative_text).to eq({})
+ expect(page.informative_text).to eq({ "arguments" => [], "translation" => "forms.2024.sales.soft_validations.retirement_value_check.min.informative_text" })
end
it "has correct interruption_screen_question_ids" do
diff --git a/spec/models/form/sales/questions/buyer_interview_spec.rb b/spec/models/form/sales/questions/buyer_interview_spec.rb
index 3370a84f5..e2b39c50f 100644
--- a/spec/models/form/sales/questions/buyer_interview_spec.rb
+++ b/spec/models/form/sales/questions/buyer_interview_spec.rb
@@ -5,7 +5,8 @@ RSpec.describe Form::Sales::Questions::BuyerInterview, 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)))) }
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2023, 4, 1), start_year_after_2024?: true) }
+ let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form:, id: "setup")) }
it "has correct page" do
expect(question.page).to eq(page)
@@ -33,16 +34,42 @@ RSpec.describe Form::Sales::Questions::BuyerInterview, type: :model do
context "when there are joint buyers" do
subject(:question) { described_class.new(question_id, question_definition, page, joint_purchase: true) }
- it "has the expected copy_key" do
- expect(question.copy_key).to eq("sales.setup.noint.joint_purchase")
+ context "when the form start year is before 2024" do
+ let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form:, id: "household_characteristics")) }
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 3, 1), start_year_after_2024?: false) }
+
+ it "has the expected copy_key" do
+ expect(question.copy_key).to eq("sales.household_characteristics.noint.joint_purchase")
+ end
+ end
+
+ context "when the form start year is after 2024" do
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_after_2024?: true) }
+
+ it "has the expected copy_key" do
+ expect(question.copy_key).to eq("sales.setup.noint.joint_purchase")
+ end
end
end
context "when there is a single buyer" do
subject(:question) { described_class.new(question_id, question_definition, page, joint_purchase: false) }
- it "has the expected copy_key" do
- expect(question.copy_key).to eq("sales.setup.noint.not_joint_purchase")
+ context "when the form start year is before 2024" do
+ let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form:, id: "household_characteristics")) }
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2023, 4, 1), start_year_after_2024?: false) }
+
+ it "has the expected copy_key" do
+ expect(question.copy_key).to eq("sales.household_characteristics.noint.not_joint_purchase")
+ end
+ end
+
+ context "when the form start year is after 2024" do
+ let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_after_2024?: true) }
+
+ it "has the expected copy_key" do
+ expect(question.copy_key).to eq("sales.setup.noint.not_joint_purchase")
+ end
end
end
end
diff --git a/spec/models/form/sales/questions/privacy_notice_spec.rb b/spec/models/form/sales/questions/privacy_notice_spec.rb
index 11589049d..48de6056f 100644
--- a/spec/models/form/sales/questions/privacy_notice_spec.rb
+++ b/spec/models/form/sales/questions/privacy_notice_spec.rb
@@ -6,7 +6,7 @@ RSpec.describe Form::Sales::Questions::PrivacyNotice, type: :model do
let(:question_id) { nil }
let(:question_definition) { nil }
let(:page) { instance_double(Form::Page) }
- let(:subsection) { instance_double(Form::Subsection) }
+ let(:subsection) { instance_double(Form::Subsection, id: "setup") }
let(:form) { instance_double(Form, start_date: Time.zone.local(2023, 4, 1)) }
before do
@@ -31,23 +31,9 @@ RSpec.describe Form::Sales::Questions::PrivacyNotice, type: :model do
expect(question.derived?(nil)).to be false
end
- context "when there are joint buyers" do
- subject(:question) { described_class.new(question_id, question_definition, page, joint_purchase: true) }
-
- it "has the expected copy_key" do
- expect(question.copy_key).to eq("sales.setup.privacynotice.joint_purchase")
- end
- end
-
- context "when there is a single buyer" do
- subject(:question) { described_class.new(question_id, question_definition, page, joint_purchase: false) }
-
- it "has the expected copy_key" do
- expect(question.copy_key).to eq("sales.setup.privacynotice.not_joint_purchase")
- end
- end
-
context "when the form year is before 2024" do
+ let(:subsection) { instance_double(Form::Subsection, id: "household_characteristics") }
+
before do
allow(form).to receive(:start_year_after_2024?).and_return(false)
end
@@ -66,6 +52,10 @@ RSpec.describe Form::Sales::Questions::PrivacyNotice, type: :model do
it "returns correct unanswered_error_message" do
expect(question.unanswered_error_message).to eq("You must show the MHCLG privacy notice to the buyer before you can submit this log.")
end
+
+ it "has the expected copy_key" do
+ expect(question.copy_key).to eq("sales.household_characteristics.privacynotice.not_joint_purchase")
+ end
end
context "and there are joint buyers" do
@@ -84,6 +74,10 @@ RSpec.describe Form::Sales::Questions::PrivacyNotice, type: :model do
it "returns correct unanswered_error_message" do
expect(question.unanswered_error_message).to eq("You must show the MHCLG privacy notice to the buyers before you can submit this log.")
end
+
+ it "has the expected copy_key" do
+ expect(question.copy_key).to eq("sales.household_characteristics.privacynotice.joint_purchase")
+ end
end
end
@@ -106,6 +100,10 @@ RSpec.describe Form::Sales::Questions::PrivacyNotice, type: :model do
it "returns correct unanswered_error_message" do
expect(question.unanswered_error_message).to eq("You must show or give the buyer access to the MHCLG privacy notice before you can submit this log.")
end
+
+ it "has the expected copy_key" do
+ expect(question.copy_key).to eq("sales.setup.privacynotice.not_joint_purchase")
+ end
end
context "and there are joint buyers" do
@@ -124,6 +122,10 @@ RSpec.describe Form::Sales::Questions::PrivacyNotice, type: :model do
it "returns correct unanswered_error_message" do
expect(question.unanswered_error_message).to eq("You must show or give the buyers access to the MHCLG privacy notice before you can submit this log.")
end
+
+ it "has the expected copy_key" do
+ expect(question.copy_key).to eq("sales.setup.privacynotice.joint_purchase")
+ end
end
end
end
diff --git a/spec/services/bulk_upload/sales/year2023/row_parser_spec.rb b/spec/services/bulk_upload/sales/year2023/row_parser_spec.rb
index 824754b25..70bd923e6 100644
--- a/spec/services/bulk_upload/sales/year2023/row_parser_spec.rb
+++ b/spec/services/bulk_upload/sales/year2023/row_parser_spec.rb
@@ -1029,8 +1029,8 @@ RSpec.describe BulkUpload::Sales::Year2023::RowParser do
end
it "populates with correct error message" do
- expect(parser.errors.where(:field_30, category: :soft_validation).first.message).to eql("You told us this person is aged 22 years and retired.")
- expect(parser.errors.where(:field_30, category: :soft_validation).first.message).to eql("You told us this person is aged 22 years and retired.")
+ expect(parser.errors.where(:field_30, category: :soft_validation).first.message).to eql("You told us this person is aged 22 years and retired. The minimum expected retirement age in England is 66.")
+ expect(parser.errors.where(:field_30, category: :soft_validation).first.message).to eql("You told us this person is aged 22 years and retired. The minimum expected retirement age in England is 66.")
end
end
diff --git a/spec/services/bulk_upload/sales/year2024/row_parser_spec.rb b/spec/services/bulk_upload/sales/year2024/row_parser_spec.rb
index 96914fc44..d1d4aeb53 100644
--- a/spec/services/bulk_upload/sales/year2024/row_parser_spec.rb
+++ b/spec/services/bulk_upload/sales/year2024/row_parser_spec.rb
@@ -1486,8 +1486,8 @@ RSpec.describe BulkUpload::Sales::Year2024::RowParser do
it "populates with correct error message" do
parser.valid?
- expect(parser.errors.where(:field_31, category: :soft_validation).first.message).to eql("You told us this person is aged 22 years and retired.")
- expect(parser.errors.where(:field_35, category: :soft_validation).first.message).to eql("You told us this person is aged 22 years and retired.")
+ expect(parser.errors.where(:field_31, category: :soft_validation).first.message).to eql("You told us this person is aged 22 years and retired. The minimum expected retirement age in England is 66.")
+ expect(parser.errors.where(:field_35, category: :soft_validation).first.message).to eql("You told us this person is aged 22 years and retired. The minimum expected retirement age in England is 66.")
end
end
end