|
|
|
require "rails_helper"
|
|
|
|
|
|
|
|
RSpec.describe Form::Sales::Subsections::HouseholdSituation, type: :model do
|
|
|
|
subject(:household_characteristics) { described_class.new(nil, nil, section) }
|
|
|
|
|
|
|
|
let(:form) { instance_double(Form, start_year_2024_or_later?: true, start_year_2025_or_later?: false) }
|
|
|
|
let(:section) { instance_double(Form::Sales::Sections::Household, form:) }
|
|
|
|
|
|
|
|
it "has correct section" do
|
|
|
|
expect(household_characteristics.section).to eq(section)
|
|
|
|
end
|
|
|
|
|
|
|
|
context "when the start year is 2024" do
|
|
|
|
let(:form) { instance_double(Form, start_year_2024_or_later?: true, start_year_2025_or_later?: false) }
|
|
|
|
|
|
|
|
it "has correct pages" do
|
|
|
|
expect(household_characteristics.pages.map(&:id)).to eq(
|
|
|
|
%w[
|
|
|
|
buyer1_previous_tenure
|
|
|
|
last_accommodation
|
|
|
|
last_accommodation_la
|
|
|
|
buyers_organisations
|
|
|
|
buyer_2_living_in
|
|
|
|
buyer_2_previous_housing_situation
|
|
|
|
],
|
|
|
|
)
|
|
|
|
end
|
|
|
|
|
|
|
|
it "has the correct id" do
|
|
|
|
expect(household_characteristics.id).to eq("household_situation")
|
|
|
|
end
|
|
|
|
|
|
|
|
it "has the correct label" do
|
|
|
|
expect(household_characteristics.label).to eq("Household situation")
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
context "when the start year is 2025" do
|
|
|
|
let(:form) { instance_double(Form, start_year_2024_or_later?: true, start_year_2025_or_later?: true) }
|
|
|
|
|
|
|
|
it "has correct pages" do
|
|
|
|
expect(household_characteristics.pages.map(&:id)).to eq(
|
|
|
|
%w[
|
|
|
|
buyer1_previous_tenure
|
|
|
|
last_accommodation
|
|
|
|
last_accommodation_la
|
|
|
|
buyer_2_living_in
|
|
|
|
buyer_2_previous_housing_situation
|
|
|
|
],
|
|
|
|
)
|
|
|
|
end
|
|
|
|
|
|
|
|
it "has correct depends on" do
|
|
|
|
expect(household_characteristics.depends_on).to eq([{ "setup_completed?" => true, "is_staircase?" => false }])
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|