Browse Source

Skip update if record does not have hhmemb value

pull/1925/head
Kat 3 years ago
parent
commit
6369faf5d2
  1. 2
      app/services/imports/lettings_logs_field_import_service.rb
  2. 15
      spec/services/imports/lettings_logs_field_import_service_spec.rb

2
app/services/imports/lettings_logs_field_import_service.rb

@ -309,6 +309,8 @@ module Imports
record = LettingsLog.find_by(old_id:)
return @logger.warn("lettings log with old id #{old_id} not found") unless record
return @logger.info("lettings log #{record.id} has no hhmemb, skipping update") unless record.hhmemb
if (2..record.hhmemb).all? { |person_index| record.has_any_person_details?(person_index) || record["details_known_#{person_index}"] == 1 }
return @logger.info("lettings log #{record.id} has all household member details, skipping update")
end

15
spec/services/imports/lettings_logs_field_import_service_spec.rb

@ -1337,5 +1337,20 @@ RSpec.describe Imports::LettingsLogsFieldImportService do
expect(lettings_log.values_updated_at).to be_nil
end
end
context "when the record has no hhmemb" do
let(:lettings_log) { LettingsLog.find_by(old_id: lettings_log_id) }
before do
lettings_log.update!(hhmemb: nil)
end
it "does not update the lettings_log person details" do
expect(logger).to receive(:info).with(/lettings log \d+ has no hhmemb, skipping update/)
import_service.send(:update_person_details, lettings_log_xml)
lettings_log.reload
expect(lettings_log.values_updated_at).to be_nil
end
end
end
end

Loading…
Cancel
Save