From 969d60db6e508ea7138f95261dbf9a6359791c7e Mon Sep 17 00:00:00 2001 From: Phil Lee Date: Fri, 6 Jan 2023 09:36:23 +0000 Subject: [PATCH] validate null for startdate --- app/services/bulk_upload/lettings/row_parser.rb | 3 +++ .../services/bulk_upload/lettings/row_parser_spec.rb | 12 ++++++++++++ 2 files changed, 15 insertions(+) diff --git a/app/services/bulk_upload/lettings/row_parser.rb b/app/services/bulk_upload/lettings/row_parser.rb index cf58c65b8..a3a3be011 100644 --- a/app/services/bulk_upload/lettings/row_parser.rb +++ b/app/services/bulk_upload/lettings/row_parser.rb @@ -139,6 +139,9 @@ class BulkUpload::Lettings::RowParser validates :field_1, presence: true, inclusion: { in: (1..12).to_a } validates :field_4, presence: { if: proc { [1, 3, 5, 7, 9, 11].include?(field_1) } } + validates :field_96, presence: true + validates :field_97, presence: true + validates :field_98, presence: true def attribute_set @attribute_set ||= instance_variable_get(:@attributes) diff --git a/spec/services/bulk_upload/lettings/row_parser_spec.rb b/spec/services/bulk_upload/lettings/row_parser_spec.rb index 3f91bde12..18c6be2ee 100644 --- a/spec/services/bulk_upload/lettings/row_parser_spec.rb +++ b/spec/services/bulk_upload/lettings/row_parser_spec.rb @@ -98,6 +98,18 @@ RSpec.describe BulkUpload::Lettings::RowParser do end end + describe "fields 96, 97, 98 => startdate" do + context "when any one of these fields is blank" do + let(:attributes) { { field_96: nil, field_97: nil, field_98: nil } } + + it "returns an error" do + expect(parser.errors[:field_96]).to be_present + expect(parser.errors[:field_97]).to be_present + expect(parser.errors[:field_98]).to be_present + end + end + end + describe "#field_134" do context "when an unpermitted value" do let(:attributes) { { field_134: 3 } }