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:) } subject(:page) { described_class.new(nil, page_definition, subsection, person_index:) }
let(:page_definition) { nil } 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 } let(:person_index) { 2 }
it "has correct subsection" do 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(:page_definition) { nil }
let(:start_year_2026_or_later?) { false } 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(:subsection) { instance_double(Form::Subsection, form:) }
let(:person_index) { 2 } let(:person_index) { 2 }
@ -27,6 +28,8 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do
end end
context "with start year < 2026", metadata: { year: 25 } do context "with start year < 2026", metadata: { year: 25 } do
let(:person_question_count) { 4 }
it "has correct depends_on" do it "has correct depends_on" do
expect(page.depends_on).to eq( expect(page.depends_on).to eq(
[{ "details_known_2" => 0 }], [{ "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 context "with start year >= 2026", metadata: { year: 26 } do
let(:start_year_2026_or_later?) { true } let(:start_year_2026_or_later?) { true }
let(:person_question_count) { 5 }
it "has correct depends_on" do it "has correct depends_on" do
expect(page.depends_on).to eq( expect(page.depends_on).to eq(
@ -66,9 +70,7 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do
end end
context "with start year < 2026", metadata: { year: 25 } do context "with start year < 2026", metadata: { year: 25 } do
before do let(:person_question_count) { 4 }
allow(form).to receive(:start_year_2026_or_later?).and_return(false)
end
it "has correct depends_on" do it "has correct depends_on" do
expect(page.depends_on).to eq( expect(page.depends_on).to eq(
@ -78,9 +80,8 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do
end end
context "with start year >= 2026", metadata: { year: 26 } do context "with start year >= 2026", metadata: { year: 26 } do
before do let(:start_year_2026_or_later?) { true }
allow(form).to receive(:start_year_2026_or_later?).and_return(true) let(:person_question_count) { 5 }
end
it "has correct depends_on" do it "has correct depends_on" do
expect(page.depends_on).to eq( 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:) } subject(:page) { described_class.new(nil, page_definition, subsection, person_index:) }
let(:page_definition) { nil } 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 } let(:person_index) { 2 }
before do 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(:question_definition) { nil }
let(:start_year_2026_or_later?) { false } let(:start_year_2026_or_later?) { false }
let(:person_question_count) { 5 }
let(:start_year) { current_collection_start_year } 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 } let(:person_index) { 2 }
it "has correct page" do 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 context "with year 2025", metadata: { year: 25 } do
let(:start_year) { 2025 } let(:start_year) { 2025 }
let(:person_question_count) { 4 }
it "has the correct question number" do it "has the correct question number" do
expect(question.question_number).to eq(38) 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 context "with year 2026", metadata: { year: 26 } do
let(:start_year_2026_or_later?) { true } let(:start_year_2026_or_later?) { true }
let(:start_year) { 2026 } let(:start_year) { 2026 }
let(:person_question_count) { 5 }
it "has the correct question number" do it "has the correct question number" do
expect(question.question_number).to eq(37) 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 context "with year 2025", metadata: { year: 25 } do
let(:start_year) { 2025 } let(:start_year) { 2025 }
let(:person_question_count) { 4 }
it "has the correct question number" do it "has the correct question number" do
expect(question.question_number).to eq(42) 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 context "with year 2026", metadata: { year: 26 } do
let(:start_year_2026_or_later?) { true } let(:start_year_2026_or_later?) { true }
let(:start_year) { 2026 } let(:start_year) { 2026 }
let(:person_question_count) { 5 }
it "has the correct question number" do it "has the correct question number" do
expect(question.question_number).to eq(42) 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(:question_definition) { nil }
let(:year) { nil } let(:year) { nil }
let(:person_question_count) { 5 }
let(:page) do let(:page) do
instance_double( instance_double(
Form::Page, 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_date: year ? collection_start_date_for_year(year) : current_collection_start_date,
start_year_2025_or_later?: year.nil? || year >= 2025, start_year_2025_or_later?: year.nil? || year >= 2025,
start_year_2026_or_later?: year.nil? || year >= 2026, 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:) } subject(:question) { described_class.new(nil, question_definition, page, person_index:) }
let(:question_definition) { 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(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 } let(:person_index) { 2 }
before do before do

Loading…
Cancel
Save