From dcb493f09dc55a6e9f595fee504ed7e0a87f543b Mon Sep 17 00:00:00 2001 From: natdeanlewissoftwire Date: Thu, 31 Aug 2023 14:32:39 +0100 Subject: [PATCH] feat: make offered unsafe as 0.00 is an expected value --- .../imports/lettings_logs_import_service.rb | 2 +- .../lettings_logs_import_service_spec.rb | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/app/services/imports/lettings_logs_import_service.rb b/app/services/imports/lettings_logs_import_service.rb index a1c957b85..b98f890cd 100644 --- a/app/services/imports/lettings_logs_import_service.rb +++ b/app/services/imports/lettings_logs_import_service.rb @@ -174,7 +174,7 @@ module Imports 0 end - attributes["offered"] = safe_string_as_integer(xml_doc, "Q20") + attributes["offered"] = unsafe_string_as_integer(xml_doc, "Q20") attributes["propcode"] = string_or_nil(xml_doc, "Q21a") attributes["beds"] = safe_string_as_integer(xml_doc, "Q22") attributes["unittype_gn"] = unsafe_string_as_integer(xml_doc, "Q23") diff --git a/spec/services/imports/lettings_logs_import_service_spec.rb b/spec/services/imports/lettings_logs_import_service_spec.rb index 07fd6996e..100e25725 100644 --- a/spec/services/imports/lettings_logs_import_service_spec.rb +++ b/spec/services/imports/lettings_logs_import_service_spec.rb @@ -442,6 +442,25 @@ RSpec.describe Imports::LettingsLogsImportService do end end + context "and the number of times the property was relet is 0.00" do + before do + lettings_log_xml.at_xpath("//xmlns:Q20").content = "0.00" + end + + it "does not raise an error" do + expect { lettings_log_service.send(:create_log, lettings_log_xml) } + .not_to raise_error + end + + it "does not clear offered answer" do + lettings_log_service.send(:create_log, lettings_log_xml) + lettings_log = LettingsLog.find_by(old_id: lettings_log_id) + + expect(lettings_log).not_to be_nil + expect(lettings_log.offered).to equal(0) + end + end + context "when the log being imported was manually entered" do it "sets the creation method correctly" do lettings_log_service.send(:create_log, lettings_log_xml)