From be6e6585bb82c19218f6d380776061794d0958a1 Mon Sep 17 00:00:00 2001 From: Phil Lee Date: Mon, 27 Mar 2023 09:40:43 +0100 Subject: [PATCH 1/2] bulk upload maps new field errors (#1471) --- .../lettings/year2023/row_parser.rb | 6 +++++ .../lettings/year2023/row_parser_spec.rb | 23 ++++++++++++++++++- 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/app/services/bulk_upload/lettings/year2023/row_parser.rb b/app/services/bulk_upload/lettings/year2023/row_parser.rb index d1689b2dd..2fc61921f 100644 --- a/app/services/bulk_upload/lettings/year2023/row_parser.rb +++ b/app/services/bulk_upload/lettings/year2023/row_parser.rb @@ -766,6 +766,12 @@ private mrcdate: %i[field_36 field_37 field_38], voiddate: %i[field_33 field_34 field_35], + + uprn: [:field_18], + address_line1: [:field_19], + address_line2: [:field_20], + town_or_city: [:field_21], + county: [:field_22], } end diff --git a/spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb b/spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb index 7dc1e177b..bc35388d7 100644 --- a/spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb +++ b/spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb @@ -63,8 +63,19 @@ RSpec.describe BulkUpload::Lettings::Year2023::RowParser do stub_request(:get, /api.postcodes.io/) .to_return(status: 200, body: "{\"status\":200,\"result\":{\"admin_district\":\"Manchester\", \"codes\":{\"admin_district\": \"E08000003\"}}}", headers: {}) + body = { + results: [ + { + DPA: { + "POSTCODE": "EC1N 2TD", + "POST_TOWN": "Newcastle", + }, + }, + ], + }.to_json + stub_request(:get, "https://api.os.uk/search/places/v1/uprn?key=OS_DATA_KEY&uprn=100023336956") - .to_return(status: 200, body: "{}", headers: {}) + .to_return(status: 200, body:, headers: {}) parser.valid? end @@ -712,6 +723,16 @@ RSpec.describe BulkUpload::Lettings::Year2023::RowParser do end end + describe "#field_18" do # UPRN + context "when over 12 characters" do + let(:attributes) { { bulk_upload:, field_18: "1234567890123" } } + + it "has errors on the field" do + expect(parser.errors[:field_18]).to be_present + end + end + end + describe "#field_30" do context "when null" do let(:attributes) { setup_section_params.merge({ field_30: nil }) } From bc722ab1ff2a9d34bd4f2571803695892c554be8 Mon Sep 17 00:00:00 2001 From: Jack <113976590+bibblobcode@users.noreply.github.com> Date: Mon, 27 Mar 2023 10:28:41 +0100 Subject: [PATCH 2/2] British Summer Time fixes (#1473) --- spec/services/bulk_upload/lettings/year2022/row_parser_spec.rb | 2 +- spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/spec/services/bulk_upload/lettings/year2022/row_parser_spec.rb b/spec/services/bulk_upload/lettings/year2022/row_parser_spec.rb index bada35dad..b771cbcea 100644 --- a/spec/services/bulk_upload/lettings/year2022/row_parser_spec.rb +++ b/spec/services/bulk_upload/lettings/year2022/row_parser_spec.rb @@ -3,7 +3,7 @@ require "rails_helper" RSpec.describe BulkUpload::Lettings::Year2022::RowParser do subject(:parser) { described_class.new(attributes) } - let(:now) { Time.zone.today } + let(:now) { Time.zone.parse("01/03/2023") } let(:attributes) { { bulk_upload: } } let(:bulk_upload) { create(:bulk_upload, :lettings, user:) } diff --git a/spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb b/spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb index bc35388d7..a7dc629c0 100644 --- a/spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb +++ b/spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb @@ -3,7 +3,7 @@ require "rails_helper" RSpec.describe BulkUpload::Lettings::Year2023::RowParser do subject(:parser) { described_class.new(attributes) } - let(:now) { Time.zone.today } + let(:now) { Time.zone.parse("01/03/2023") } let(:attributes) { { bulk_upload: } } let(:bulk_upload) { create(:bulk_upload, :lettings, user:, needstype: nil) }