Browse Source

Set prevloc

pull/2207/head
Kat 2 years ago
parent
commit
42cd88e085
  1. 4
      app/models/derived_variables/sales_log_variables.rb
  2. 9
      spec/models/sales_log_spec.rb

4
app/models/derived_variables/sales_log_variables.rb

@ -40,6 +40,10 @@ module DerivedVariables::SalesLogVariables
if saledate && form.start_year_after_2024? && discounted_ownership_sale? if saledate && form.start_year_after_2024? && discounted_ownership_sale?
self.ppostcode_full = postcode_full self.ppostcode_full = postcode_full
self.ppcodenk = 0 if postcode_full.present?
self.prevloc = la
self.is_previous_la_inferred = is_la_inferred
self.previous_la_known = la_known
end end
set_encoded_derived_values!(DEPENDENCIES) set_encoded_derived_values!(DEPENDENCIES)

9
spec/models/sales_log_spec.rb

@ -704,11 +704,12 @@ RSpec.describe SalesLog, type: :model do
expect(record_from_db["la"]).to eq("E06000064") expect(record_from_db["la"]).to eq("E06000064")
end end
it "does not set previous postcode for discounted sale" do it "does not set previous postcode or previous la for discounted sale" do
address_sales_log_23_24.update!(ownershipsch: 2, ppostcode_full: nil) address_sales_log_23_24.update!(ownershipsch: 2, ppostcode_full: nil, prevloc: nil)
record_from_db = described_class.find(address_sales_log_23_24.id) record_from_db = described_class.find(address_sales_log_23_24.id)
expect(address_sales_log_23_24.ppostcode_full).to eq(nil) expect(address_sales_log_23_24.ppostcode_full).to eq(nil)
expect(record_from_db["ppostcode_full"]).to eq(nil) expect(record_from_db["ppostcode_full"]).to eq(nil)
expect(record_from_db["prevloc"]).to eq(nil)
end end
end end
@ -719,6 +720,8 @@ RSpec.describe SalesLog, type: :model do
created_by: created_by_user, created_by: created_by_user,
ppcodenk: 1, ppcodenk: 1,
postcode_full: "CA10 1AA", postcode_full: "CA10 1AA",
ppostcode_full: nil,
prevloc: nil,
saledate: Time.zone.local(2024, 5, 2), saledate: Time.zone.local(2024, 5, 2),
}) })
end end
@ -740,6 +743,7 @@ RSpec.describe SalesLog, type: :model do
record_from_db = described_class.find(address_sales_log_24_25.id) record_from_db = described_class.find(address_sales_log_24_25.id)
expect(address_sales_log_24_25.ppostcode_full).to eq("CA10 1AA") expect(address_sales_log_24_25.ppostcode_full).to eq("CA10 1AA")
expect(record_from_db["ppostcode_full"]).to eq("CA10 1AA") expect(record_from_db["ppostcode_full"]).to eq("CA10 1AA")
expect(record_from_db["prevloc"]).to eq("E06000064")
end end
it "does not set previous postcode for non discounted sale" do it "does not set previous postcode for non discounted sale" do
@ -747,6 +751,7 @@ RSpec.describe SalesLog, type: :model do
record_from_db = described_class.find(address_sales_log_24_25.id) record_from_db = described_class.find(address_sales_log_24_25.id)
expect(address_sales_log_24_25.ppostcode_full).to eq(nil) expect(address_sales_log_24_25.ppostcode_full).to eq(nil)
expect(record_from_db["ppostcode_full"]).to eq(nil) expect(record_from_db["ppostcode_full"]).to eq(nil)
expect(record_from_db["prevloc"]).to eq(nil)
end end
end end

Loading…
Cancel
Save