From d646418dcc706dcb07234090e323c548b976209a Mon Sep 17 00:00:00 2001 From: Kat Date: Mon, 25 Apr 2022 14:58:15 +0100 Subject: [PATCH] infer the correct field value and remove irrelevant dynamically not required line --- app/models/case_log.rb | 9 +++------ spec/models/case_log_spec.rb | 32 ++++++++++++++++---------------- 2 files changed, 19 insertions(+), 22 deletions(-) diff --git a/app/models/case_log.rb b/app/models/case_log.rb index f03bcc570..0a2868c3b 100644 --- a/app/models/case_log.rb +++ b/app/models/case_log.rb @@ -396,7 +396,7 @@ private end def reset_derived_questions - dependent_questions = { layear: [{ key: :renewal, value: 0 }], + dependent_questions = { waityear: [{ key: :renewal, value: 0 }], homeless: [{ key: :renewal, value: 0 }], referral: [{ key: :renewal, value: 0 }], underoccupation_benefitcap: [{ key: :renewal, value: 0 }] } @@ -418,10 +418,7 @@ private end def dynamically_not_required - la_known_questions = [] - la_known_questions << "la_known" if postcode_known != 0 - la_known_questions << "previous_la_known" if previous_postcode_known != 0 - ((form.invalidated_questions(self) + form.readonly_questions).map(&:id) + la_known_questions).uniq + (form.invalidated_questions(self) + form.readonly_questions).map(&:id).uniq end def set_derived_fields! @@ -462,7 +459,7 @@ private self.underoccupation_benefitcap = 2 if collection_start_year == 2021 self.homeless = 2 self.referral = 0 - self.layear = 1 + self.waityear = 1 if is_general_needs? # fixed term self.prevten = 32 if managing_organisation.provider_type == "PRP" diff --git a/spec/models/case_log_spec.rb b/spec/models/case_log_spec.rb index 852b2eaec..3f6620cb5 100644 --- a/spec/models/case_log_spec.rb +++ b/spec/models/case_log_spec.rb @@ -1381,10 +1381,10 @@ RSpec.describe CaseLog do }) end - it "correctly derives and saves layear" do - record_from_db = ActiveRecord::Base.connection.execute("select layear from case_logs where id=#{case_log.id}").to_a[0] - expect(record_from_db["layear"]).to eq(1) - expect(case_log["layear"]).to eq(1) + it "correctly derives and saves waityear" do + record_from_db = ActiveRecord::Base.connection.execute("select waityear from case_logs where id=#{case_log.id}").to_a[0] + expect(record_from_db["waityear"]).to eq(1) + expect(case_log["waityear"]).to eq(1) end it "correctly derives and saves underoccupation_benefitcap if year is 2021" do @@ -1703,29 +1703,29 @@ RSpec.describe CaseLog do context "when it changes from a renewal to not a renewal" do let(:case_log) { FactoryBot.create(:case_log) } - it "resets inferred layear value" do + it "resets inferred waityear value" do case_log.update!({ renewal: 1 }) - record_from_db = ActiveRecord::Base.connection.execute("select layear from case_logs where id=#{case_log.id}").to_a[0] - expect(record_from_db["layear"]).to eq(1) - expect(case_log["layear"]).to eq(1) + record_from_db = ActiveRecord::Base.connection.execute("select waityear from case_logs where id=#{case_log.id}").to_a[0] + expect(record_from_db["waityear"]).to eq(1) + expect(case_log["waityear"]).to eq(1) case_log.update!({ renewal: 0 }) - record_from_db = ActiveRecord::Base.connection.execute("select layear from case_logs where id=#{case_log.id}").to_a[0] - expect(record_from_db["layear"]).to eq(nil) - expect(case_log["layear"]).to eq(nil) + record_from_db = ActiveRecord::Base.connection.execute("select waityear from case_logs where id=#{case_log.id}").to_a[0] + expect(record_from_db["waityear"]).to eq(nil) + expect(case_log["waityear"]).to eq(nil) end end context "when it is not a renewal" do let(:case_log) { FactoryBot.create(:case_log) } - it "saves layear value" do - case_log.update!({ renewal: 0, layear: 2 }) + it "saves waityear value" do + case_log.update!({ renewal: 0, waityear: 2 }) - record_from_db = ActiveRecord::Base.connection.execute("select layear from case_logs where id=#{case_log.id}").to_a[0] - expect(record_from_db["layear"]).to eq(2) - expect(case_log["layear"]).to eq(2) + record_from_db = ActiveRecord::Base.connection.execute("select waityear from case_logs where id=#{case_log.id}").to_a[0] + expect(record_from_db["waityear"]).to eq(2) + expect(case_log["waityear"]).to eq(2) end end end