Browse Source

fixup! CLDC-4202: Extract person question count to the form definition

update tests
CLDC-4202-update-question-numbers
Samuel Young 1 week ago
parent
commit
ef7df36c3b
  1. 2
      spec/models/form/lettings/pages/person_age_spec.rb
  2. 15
      spec/models/form/lettings/pages/person_lead_partner_spec.rb
  3. 2
      spec/models/form/lettings/pages/person_working_situation_spec.rb
  4. 7
      spec/models/form/lettings/questions/age_spec.rb
  5. 2
      spec/models/form/lettings/questions/person_partner_spec.rb
  6. 3
      spec/models/form/lettings/questions/person_working_situation_spec.rb

2
spec/models/form/lettings/pages/person_age_spec.rb

@ -4,7 +4,7 @@ RSpec.describe Form::Lettings::Pages::PersonAge, type: :model do
subject(:page) { described_class.new(nil, page_definition, subsection, person_index:) }
let(:page_definition) { nil }
let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_2024_or_later?: false, start_year_2026_or_later?: false)) }
let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_2024_or_later?: false, start_year_2026_or_later?: false, person_question_count: 5)) }
let(:person_index) { 2 }
it "has correct subsection" do

15
spec/models/form/lettings/pages/person_lead_partner_spec.rb

@ -5,7 +5,8 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do
let(:page_definition) { nil }
let(:start_year_2026_or_later?) { false }
let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_2026_or_later?: start_year_2026_or_later?) }
let(:person_question_count) { 5 }
let(:form) { instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_2026_or_later?: start_year_2026_or_later?, person_question_count:) }
let(:subsection) { instance_double(Form::Subsection, form:) }
let(:person_index) { 2 }
@ -27,6 +28,8 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do
end
context "with start year < 2026", metadata: { year: 25 } do
let(:person_question_count) { 4 }
it "has correct depends_on" do
expect(page.depends_on).to eq(
[{ "details_known_2" => 0 }],
@ -36,6 +39,7 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do
context "with start year >= 2026", metadata: { year: 26 } do
let(:start_year_2026_or_later?) { true }
let(:person_question_count) { 5 }
it "has correct depends_on" do
expect(page.depends_on).to eq(
@ -66,9 +70,7 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do
end
context "with start year < 2026", metadata: { year: 25 } do
before do
allow(form).to receive(:start_year_2026_or_later?).and_return(false)
end
let(:person_question_count) { 4 }
it "has correct depends_on" do
expect(page.depends_on).to eq(
@ -78,9 +80,8 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do
end
context "with start year >= 2026", metadata: { year: 26 } do
before do
allow(form).to receive(:start_year_2026_or_later?).and_return(true)
end
let(:start_year_2026_or_later?) { true }
let(:person_question_count) { 5 }
it "has correct depends_on" do
expect(page.depends_on).to eq(

2
spec/models/form/lettings/pages/person_working_situation_spec.rb

@ -4,7 +4,7 @@ RSpec.describe Form::Lettings::Pages::PersonWorkingSituation, type: :model do
subject(:page) { described_class.new(nil, page_definition, subsection, person_index:) }
let(:page_definition) { nil }
let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_2026_or_later?: false)) }
let(:subsection) { instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2024, 4, 1), start_year_2026_or_later?: false, person_question_count: 5)) }
let(:person_index) { 2 }
before do

7
spec/models/form/lettings/questions/age_spec.rb

@ -7,8 +7,9 @@ RSpec.describe Form::Lettings::Questions::Age, type: :model do
let(:question_definition) { nil }
let(:start_year_2026_or_later?) { false }
let(:person_question_count) { 5 }
let(:start_year) { current_collection_start_year }
let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: collection_start_date_for_year(start_year), start_year_2024_or_later?: true, start_year_2026_or_later?: start_year_2026_or_later?))) }
let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: collection_start_date_for_year(start_year), start_year_2024_or_later?: true, start_year_2026_or_later?: start_year_2026_or_later?, person_question_count:))) }
let(:person_index) { 2 }
it "has correct page" do
@ -55,6 +56,7 @@ RSpec.describe Form::Lettings::Questions::Age, type: :model do
context "with year 2025", metadata: { year: 25 } do
let(:start_year) { 2025 }
let(:person_question_count) { 4 }
it "has the correct question number" do
expect(question.question_number).to eq(38)
@ -64,6 +66,7 @@ RSpec.describe Form::Lettings::Questions::Age, type: :model do
context "with year 2026", metadata: { year: 26 } do
let(:start_year_2026_or_later?) { true }
let(:start_year) { 2026 }
let(:person_question_count) { 5 }
it "has the correct question number" do
expect(question.question_number).to eq(37)
@ -93,6 +96,7 @@ RSpec.describe Form::Lettings::Questions::Age, type: :model do
context "with year 2025", metadata: { year: 25 } do
let(:start_year) { 2025 }
let(:person_question_count) { 4 }
it "has the correct question number" do
expect(question.question_number).to eq(42)
@ -102,6 +106,7 @@ RSpec.describe Form::Lettings::Questions::Age, type: :model do
context "with year 2026", metadata: { year: 26 } do
let(:start_year_2026_or_later?) { true }
let(:start_year) { 2026 }
let(:person_question_count) { 5 }
it "has the correct question number" do
expect(question.question_number).to eq(42)

2
spec/models/form/lettings/questions/person_partner_spec.rb

@ -7,6 +7,7 @@ RSpec.describe Form::Lettings::Questions::PersonPartner, type: :model do
let(:question_definition) { nil }
let(:year) { nil }
let(:person_question_count) { 5 }
let(:page) do
instance_double(
Form::Page,
@ -17,6 +18,7 @@ RSpec.describe Form::Lettings::Questions::PersonPartner, type: :model do
start_date: year ? collection_start_date_for_year(year) : current_collection_start_date,
start_year_2025_or_later?: year.nil? || year >= 2025,
start_year_2026_or_later?: year.nil? || year >= 2026,
person_question_count:
),
),
)

3
spec/models/form/lettings/questions/person_working_situation_spec.rb

@ -4,7 +4,8 @@ RSpec.describe Form::Lettings::Questions::PersonWorkingSituation, type: :model d
subject(:question) { described_class.new(nil, question_definition, page, person_index:) }
let(:question_definition) { nil }
let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 4), start_year_2026_or_later?: false))) }
let(:person_question_count) { 5 }
let(:page) { instance_double(Form::Page, subsection: instance_double(Form::Subsection, form: instance_double(Form, start_date: Time.zone.local(2025, 4, 4), start_year_2026_or_later?: false, person_question_count:))) }
let(:person_index) { 2 }
before do

Loading…
Cancel
Save