diff --git a/app/models/form/sales/subsections/income_benefits_and_savings.rb b/app/models/form/sales/subsections/income_benefits_and_savings.rb index 05dabdadd..fe95bfd8c 100644 --- a/app/models/form/sales/subsections/income_benefits_and_savings.rb +++ b/app/models/form/sales/subsections/income_benefits_and_savings.rb @@ -22,7 +22,15 @@ class Form::Sales::Subsections::IncomeBenefitsAndSavings < ::Form::Subsection Form::Sales::Pages::SavingsValueCheck.new("savings_value_check", nil, self), Form::Sales::Pages::DepositValueCheck.new("savings_deposit_value_check", nil, self), Form::Sales::Pages::PreviousOwnership.new(nil, nil, self), - Form::Sales::Pages::PreviousShared.new(nil, nil, self), - ] + previous_shared_page, + ].compact + end + +private + + def previous_shared_page + if form.start_date.year >= 2023 + Form::Sales::Pages::PreviousShared.new(nil, nil, self) + end end end diff --git a/spec/models/form/sales/questions/prevshared_spec.rb b/spec/models/form/sales/questions/prevshared_spec.rb index 921642f73..3806b9561 100644 --- a/spec/models/form/sales/questions/prevshared_spec.rb +++ b/spec/models/form/sales/questions/prevshared_spec.rb @@ -20,7 +20,7 @@ RSpec.describe Form::Sales::Questions::Prevshared, type: :model do end it "has the correct check_answer_label" do - expect(question.check_answer_label).to eq("Buyers previously owned a shared property") + expect(question.check_answer_label).to eq("Previous property shared ownership?") end it "has the correct type" do diff --git a/spec/models/form/sales/subsections/income_benefits_and_savings_spec.rb b/spec/models/form/sales/subsections/income_benefits_and_savings_spec.rb index 8707590d5..74002d5e0 100644 --- a/spec/models/form/sales/subsections/income_benefits_and_savings_spec.rb +++ b/spec/models/form/sales/subsections/income_benefits_and_savings_spec.rb @@ -11,26 +11,59 @@ RSpec.describe Form::Sales::Subsections::IncomeBenefitsAndSavings, type: :model expect(subsection.section).to eq(section) end - it "has correct pages" do - expect(subsection.pages.map(&:id)).to eq( - %w[ - buyer_1_income - buyer_1_income_value_check - buyer_1_income_mortgage_value_check - buyer_1_mortgage - buyer_1_mortgage_value_check - buyer_2_income - buyer_2_income_mortgage_value_check - buyer_2_mortgage - buyer_2_mortgage_value_check - housing_benefits - savings - savings_value_check - savings_deposit_value_check - previous_ownership - previous_shared - ], - ) + describe "pages" do + let(:section) { instance_double(Form::Sales::Sections::Household, form: instance_double(Form, start_date:)) } + + context "when 2022" do + let(:start_date) { Time.utc(2022, 2, 8) } + + it "has correct pages" do + expect(subsection.pages.compact.map(&:id)).to eq( + %w[ + buyer_1_income + buyer_1_income_value_check + buyer_1_income_mortgage_value_check + buyer_1_mortgage + buyer_1_mortgage_value_check + buyer_2_income + buyer_2_income_mortgage_value_check + buyer_2_mortgage + buyer_2_mortgage_value_check + housing_benefits + savings + savings_value_check + savings_deposit_value_check + previous_ownership + ], + ) + end + end + + context "when 2023" do + let(:start_date) { Time.utc(2023, 2, 8) } + + it "has correct pages" do + expect(subsection.pages.map(&:id)).to eq( + %w[ + buyer_1_income + buyer_1_income_value_check + buyer_1_income_mortgage_value_check + buyer_1_mortgage + buyer_1_mortgage_value_check + buyer_2_income + buyer_2_income_mortgage_value_check + buyer_2_mortgage + buyer_2_mortgage_value_check + housing_benefits + savings + savings_value_check + savings_deposit_value_check + previous_ownership + previous_shared + ], + ) + end + end end it "has the correct id" do diff --git a/spec/models/form_handler_spec.rb b/spec/models/form_handler_spec.rb index 879f1faf2..9b4920198 100644 --- a/spec/models/form_handler_spec.rb +++ b/spec/models/form_handler_spec.rb @@ -41,25 +41,27 @@ RSpec.describe FormHandler do form = form_handler.get_form("current_lettings") expect(form).to be_a(Form) expect(form.pages.count).to eq(13) + expect(form.name).to eq("2022_2023_lettings") end it "is able to load a previous lettings form" do form = form_handler.get_form("previous_lettings") expect(form).to be_a(Form) expect(form.pages.count).to eq(46) + expect(form.name).to eq("2021_2022_lettings") end it "is able to load a current sales form" do form = form_handler.get_form("current_sales") expect(form).to be_a(Form) - expect(form.pages.count).to eq(180) + expect(form.pages.count).to eq(179) expect(form.name).to eq("2022_2023_sales") end it "is able to load a previous sales form" do form = form_handler.get_form("previous_sales") expect(form).to be_a(Form) - expect(form.pages.count).to eq(180) + expect(form.pages.count).to eq(179) expect(form.name).to eq("2021_2022_sales") end end