Browse Source

Set has_mscharge to no if mscharge is 0

pull/1532/head
Kat 3 years ago
parent
commit
ee3e5b8e45
  1. 3
      app/services/imports/sales_logs_import_service.rb
  2. 34
      spec/services/imports/sales_logs_import_service_spec.rb

3
app/services/imports/sales_logs_import_service.rb

@ -107,7 +107,8 @@ module Imports
attributes["hhregresstill"] = still_serving(xml_doc)
attributes["proplen"] = safe_string_as_integer(xml_doc, "Q16aProplen2") || safe_string_as_integer(xml_doc, "Q16aProplensec2")
attributes["mscharge"] = monthly_charges(xml_doc, attributes)
attributes["has_mscharge"] = 1 if attributes["mscharge"].present?
attributes["has_mscharge"] = 1 if attributes["mscharge"]&.positive?
attributes["has_mscharge"] = 0 if attributes["mscharge"].present? && attributes["mscharge"] <= 0
attributes["prevten"] = unsafe_string_as_integer(xml_doc, "Q6PrevTenure")
attributes["mortlen"] = mortgage_length(xml_doc, attributes)
attributes["extrabor"] = borrowing(xml_doc, attributes)

34
spec/services/imports/sales_logs_import_service_spec.rb

@ -1478,6 +1478,40 @@ RSpec.describe Imports::SalesLogsImportService do
expect(sales_log&.jointmore).to eq(3)
end
end
context "when mscharge is 0" do
let(:sales_log_id) { "shared_ownership_sales_log" }
before do
sales_log_xml.at_xpath("//xmlns:Q29MonthlyCharges").content = "0"
allow(logger).to receive(:warn).and_return(nil)
end
it "sets has_mscharge to no" do
sales_log_service.send(:create_log, sales_log_xml)
sales_log = SalesLog.find_by(old_id: sales_log_id)
expect(sales_log&.has_mscharge).to be(0)
expect(sales_log&.mscharge).to be(nil)
end
end
context "when mscharge is more than 0" do
let(:sales_log_id) { "shared_ownership_sales_log" }
before do
sales_log_xml.at_xpath("//xmlns:Q29MonthlyCharges").content = "100"
allow(logger).to receive(:warn).and_return(nil)
end
it "sets has_mscharge to yes" do
sales_log_service.send(:create_log, sales_log_xml)
sales_log = SalesLog.find_by(old_id: sales_log_id)
expect(sales_log&.has_mscharge).to be(1)
expect(sales_log&.mscharge).to eq(100)
end
end
end
end
end

Loading…
Cancel
Save