Browse Source

feat: update derived variables to clear uprn_confirmed when uprn_known is 0

pull/2327/head
natdeanlewissoftwire 2 years ago
parent
commit
7d9d1bfc14
  1. 1
      app/models/derived_variables/lettings_log_variables.rb
  2. 1
      app/models/derived_variables/sales_log_variables.rb
  3. 10
      spec/shared/shared_examples_for_derived_fields.rb

1
app/models/derived_variables/lettings_log_variables.rb

@ -116,6 +116,7 @@ module DerivedVariables::LettingsLogVariables
if uprn_confirmed&.zero? if uprn_confirmed&.zero?
self.uprn = nil self.uprn = nil
self.uprn_known = 0 self.uprn_known = 0
self.uprn_confirmed = nil
end end
self.nationality_all = nationality_all_group if nationality_uk_or_prefers_not_to_say? self.nationality_all = nationality_all_group if nationality_uk_or_prefers_not_to_say?

1
app/models/derived_variables/sales_log_variables.rb

@ -47,6 +47,7 @@ module DerivedVariables::SalesLogVariables
if uprn_confirmed&.zero? if uprn_confirmed&.zero?
self.uprn = nil self.uprn = nil
self.uprn_known = 0 self.uprn_known = 0
self.uprn_confirmed = nil
end end
self.nationality_all = nationality_all_group if nationality_uk_or_prefers_not_to_say? self.nationality_all = nationality_all_group if nationality_uk_or_prefers_not_to_say?

10
spec/shared/shared_examples_for_derived_fields.rb

@ -14,4 +14,14 @@ RSpec.shared_examples "shared examples for derived fields" do |log_type|
expect { log.set_derived_fields! }.not_to change(log, :ethnic) expect { log.set_derived_fields! }.not_to change(log, :ethnic)
end end
end end
context "when uprn is not confirmed" do
it "derives other uprn fields correctly" do
log = FactoryBot.build(log_type, uprn_known: 1, uprn: 1, uprn_confirmed: 0)
expect { log.set_derived_fields! }.to change(log, :uprn_known).from(1).to(0)
.and change(log, :uprn).from("1").to(nil)
.and change(log, :uprn_confirmed).from(0).to(nil)
end
end
end end

Loading…
Cancel
Save