diff --git a/app/services/bulk_upload/lettings/year2023/row_parser.rb b/app/services/bulk_upload/lettings/year2023/row_parser.rb index c524b31d3..585ec7c93 100644 --- a/app/services/bulk_upload/lettings/year2023/row_parser.rb +++ b/app/services/bulk_upload/lettings/year2023/row_parser.rb @@ -329,6 +329,14 @@ class BulkUpload::Lettings::Year2023::RowParser }, on: :after_log + validates :field_11, + presence: { + if: proc { renttype == :intermediate }, + message: I18n.t("validations.not_answered", question: "intermediate rent type"), + category: :setup, + }, + on: :after_log + validates :field_15, presence: { if: proc { supported_housing? && log_uses_old_scheme_id? }, @@ -353,14 +361,6 @@ class BulkUpload::Lettings::Year2023::RowParser }, on: :after_log - validates :field_11, - presence: { - if: proc { renttype == :intermediate }, - message: I18n.t("validations.not_answered", question: "intermediate rent type"), - category: :setup, - }, - on: :after_log - validates :field_46, format: { with: /\A\d{1,3}\z|\AR\z/, message: "Age of person 1 must be a number or the letter R" }, on: :after_log validates :field_52, format: { with: /\A\d{1,3}\z|\AR\z/, message: "Age of person 2 must be a number or the letter R" }, allow_blank: true, on: :after_log validates :field_56, format: { with: /\A\d{1,3}\z|\AR\z/, message: "Age of person 3 must be a number or the letter R" }, allow_blank: true, on: :after_log 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 32fef5200..86e45ca2d 100644 --- a/spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb +++ b/spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb @@ -818,6 +818,14 @@ RSpec.describe BulkUpload::Lettings::Year2023::RowParser do end end + context "when intermediate rent other and field_12 is not given" do + let(:attributes) { { bulk_upload:, field_5: "9", field_11: "3", field_12: nil } } + + it "adds error on field_12" do + expect(parser.errors[:field_12]).to eq(["You must answer product name"]) + end + end + context "when bulk upload is for general needs" do context "when general needs option selected" do let(:attributes) { { bulk_upload:, field_5: "1", field_4: "1" } }