diff --git a/app/models/form/lettings/pages/person_lead_partner.rb b/app/models/form/lettings/pages/person_lead_partner.rb index 22b89ebcb..b86b41ca6 100644 --- a/app/models/form/lettings/pages/person_lead_partner.rb +++ b/app/models/form/lettings/pages/person_lead_partner.rb @@ -30,6 +30,6 @@ class Form::Lettings::Pages::PersonLeadPartner < ::Form::Page end def skip_page_in_form_flow?(log) - form.start_year_2026_or_later? && log.is_another_person_partner?(@person_index) + form.start_year_2026_or_later? && log.is_any_person_partner? end end diff --git a/app/models/lettings_log.rb b/app/models/lettings_log.rb index 9f014473d..0ac9f728d 100644 --- a/app/models/lettings_log.rb +++ b/app/models/lettings_log.rb @@ -449,9 +449,7 @@ class LettingsLog < Log public_send("age#{person_index}") && public_send("age#{person_index}") < 16 end - def is_another_person_partner?(person_index) - partner_numbers.delete(person_index) - + def is_any_person_partner? !partner_numbers.empty? end diff --git a/spec/models/form/lettings/pages/person_lead_partner_spec.rb b/spec/models/form/lettings/pages/person_lead_partner_spec.rb index dd56650fa..38404a198 100644 --- a/spec/models/form/lettings/pages/person_lead_partner_spec.rb +++ b/spec/models/form/lettings/pages/person_lead_partner_spec.rb @@ -9,8 +9,8 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do 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 } - let(:is_another_person_partner?) { false } - let(:log) { instance_double(LettingsLog, is_another_person_partner?: is_another_person_partner?) } + let(:is_any_person_partner?) { false } + let(:log) { instance_double(LettingsLog, is_any_person_partner?: is_any_person_partner?) } it "has correct subsection" do expect(page.subsection).to eq(subsection) @@ -23,7 +23,7 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do describe "#skip_page_in_form_flow?" do context "with start year < 2026", metadata: { year: 25 } do context "when no other person is the partner of the lead tenant" do - let(:is_another_person_partner?) { false } + let(:is_any_person_partner?) { false } it "returns false" do expect(page.skip_page_in_form_flow?(log)).to be false @@ -31,7 +31,7 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do end context "when another person is the partner of the lead tenant" do - let(:is_another_person_partner?) { true } + let(:is_any_person_partner?) { true } it "returns false" do expect(page.skip_page_in_form_flow?(log)).to be false @@ -43,7 +43,7 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do let(:start_year_2026_or_later?) { true } context "when no other person is the partner of the lead tenant" do - let(:is_another_person_partner?) { false } + let(:is_any_person_partner?) { false } it "returns false" do expect(page.skip_page_in_form_flow?(log)).to be false @@ -51,7 +51,7 @@ RSpec.describe Form::Lettings::Pages::PersonLeadPartner, type: :model do end context "when another person is the partner of the lead tenant" do - let(:is_another_person_partner?) { true } + let(:is_any_person_partner?) { true } it "returns true" do expect(page.skip_page_in_form_flow?(log)).to be true diff --git a/spec/models/lettings_log_derived_fields_spec.rb b/spec/models/lettings_log_derived_fields_spec.rb index 42793df26..c33460147 100644 --- a/spec/models/lettings_log_derived_fields_spec.rb +++ b/spec/models/lettings_log_derived_fields_spec.rb @@ -1759,7 +1759,7 @@ RSpec.describe LettingsLog, type: :model do end context "when there is an existing relationship" do - let(:log) { create(:lettings_log, :completed, hhmemb: 6, details_known_2: 0, details_known_3: 0, details_known_4: 0, details_known_5: 0, details_known_6: 0, relat2: "X", relat3: "P", relat4: "R", relat5: "X") } + let(:log) { create(:lettings_log, :in_progress, hhmemb: 6, details_known_2: 0, details_known_3: 0, details_known_4: 0, details_known_5: 0, details_known_6: 0, relat2: "X", relat3: "P", relat4: "R", relat5: "X") } context "and a new relationship is added to an earlier person than the existing one" do before do @@ -1876,7 +1876,7 @@ RSpec.describe LettingsLog, type: :model do end context "when more than one relationship is set" do - let(:log) { create(:lettings_log, :completed, hhmemb: 6, details_known_2: 0, details_known_3: 0, details_known_4: 0, details_known_5: 0, details_known_6: 0, relat2: "X", relat3: "X", relat4: "R", relat5: "X") } + let(:log) { create(:lettings_log, :in_progress, hhmemb: 6, details_known_2: 0, details_known_3: 0, details_known_4: 0, details_known_5: 0, details_known_6: 0, relat2: "X", relat3: "X", relat4: "R", relat5: "X") } before do log.relat2 = "P" diff --git a/spec/models/lettings_log_spec.rb b/spec/models/lettings_log_spec.rb index 360632048..212249fc8 100644 --- a/spec/models/lettings_log_spec.rb +++ b/spec/models/lettings_log_spec.rb @@ -2350,20 +2350,20 @@ RSpec.describe LettingsLog do end end - describe "#is_another_person_partner?" do - context "when no other person is the partner of the lead tenant" do - let(:log) { create(:lettings_log, :completed, hhmemb: 4, relat2: "X", relat3: "R") } + describe "#is_any_person_partner?" do + context "when no person is the partner of the lead tenant" do + let(:log) { create(:lettings_log, :in_progress, hhmemb: 3, details_known_2: 0, details_known_3: 0, relat2: "X", relat3: "R") } it "returns false" do - expect(log.is_another_person_partner?(4)).to be false + expect(log.is_any_person_partner?).to be false end end - context "when another person is the partner of the lead tenant" do - let(:log) { create(:lettings_log, :completed, hhmemb: 4, relat2: "X", relat3: "P") } + context "when a person is the partner of the lead tenant" do + let(:log) { create(:lettings_log, :in_progress, hhmemb: 3, details_known_2: 0, details_known_3: 0, relat2: "X", relat3: "P") } it "returns true" do - expect(log.is_another_person_partner?(4)).to be true + expect(log.is_any_person_partner?).to be true end end end