Browse Source

feat: add tests

pull/1687/head
natdeanlewissoftwire 3 years ago
parent
commit
067c9add89
  1. 6
      app/services/bulk_upload/lettings/year2022/row_parser.rb
  2. 4
      app/services/bulk_upload/lettings/year2023/row_parser.rb
  3. 47
      spec/services/bulk_upload/lettings/year2022/row_parser_spec.rb
  4. 29
      spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb

6
app/services/bulk_upload/lettings/year2022/row_parser.rb

@ -692,10 +692,10 @@ private
def validate_condition_effects def validate_condition_effects
if household_no_illness? if household_no_illness?
illness_option_fields = [field_119, field_120, field_121, field_122, field_123, field_124, field_125, field_126, field_127, field_128] illness_option_fields = %i[field_119 field_120 field_121 field_122 field_123 field_124 field_125 field_126 field_127 field_128]
illness_option_fields.each do |field| illness_option_fields.each do |field|
if field == 1 if attributes["#{field}"] == 1
errors.add(field, I18n.t("validations.household.condition_effects.no_choices")) errors.add(field.to_sym, I18n.t("validations.household.condition_effects.no_choices"))
end end
end end
end end

4
app/services/bulk_upload/lettings/year2023/row_parser.rb

@ -627,9 +627,9 @@ private
def validate_condition_effects def validate_condition_effects
if household_no_illness? if household_no_illness?
illness_option_fields = [field_98, field_92, field_95, field_90, field_91, field_93, field_94, field_97, field_96, field_99] illness_option_fields = %i[field_98 field_92 field_95 field_90 field_91 field_93 field_94 field_97 field_96 field_99]
illness_option_fields.each do |field| illness_option_fields.each do |field|
if field == 1 if attributes["#{field}"] == 1
errors.add(field, I18n.t("validations.household.condition_effects.no_choices")) errors.add(field, I18n.t("validations.household.condition_effects.no_choices"))
end end
end end

47
spec/services/bulk_upload/lettings/year2022/row_parser_spec.rb

@ -649,6 +649,16 @@ RSpec.describe BulkUpload::Lettings::Year2022::RowParser do
end end
end end
describe "#field_68 - 70" do
context "when not homeless but reasonable preference for homelessness" do
let(:attributes) { { bulk_upload:, field_68: "1", field_69: "1", field_70: "1" } }
it "is not permitted" do
expect(parser.errors[:field_70]).to be_present
end
end
end
describe "#field_78" do # referral describe "#field_78" do # referral
context "when 3 ie PRP nominated by LA and owning org is LA" do context "when 3 ie PRP nominated by LA and owning org is LA" do
let(:attributes) { { bulk_upload:, field_78: "3", field_111: owning_org.old_visible_id } } let(:attributes) { { bulk_upload:, field_78: "3", field_111: owning_org.old_visible_id } }
@ -779,6 +789,20 @@ RSpec.describe BulkUpload::Lettings::Year2022::RowParser do
end end
end end
describe "#field_103" do
context "when null" do
let(:attributes) { setup_section_params.merge({ field_103: nil }) }
it "returns an error" do
expect(parser.errors[:field_103]).to be_present
end
it "populates with correct error message" do
expect(parser.errors[:field_103]).to eql(["You must answer type of building"])
end
end
end
describe "#field_111" do # owning org describe "#field_111" do # owning org
context "when no data given" do context "when no data given" do
let(:attributes) { { bulk_upload:, field_1: "1", field_111: "" } } let(:attributes) { { bulk_upload:, field_1: "1", field_111: "" } }
@ -937,16 +961,21 @@ RSpec.describe BulkUpload::Lettings::Year2022::RowParser do
end end
end end
describe "#field_103" do describe "#field_118, field_119 - 128" do
context "when null" do context "when no illness but illnesses answered" do
let(:attributes) { setup_section_params.merge({ field_103: nil }) } let(:attributes) { { bulk_upload:, field_118: "2", field_119: "1", field_120: "1", field_121: "1" } }
it "returns an error" do
expect(parser.errors[:field_103]).to be_present
end
it "populates with correct error message" do it "errors added to correct fields" do
expect(parser.errors[:field_103]).to eql(["You must answer type of building"]) expect(parser.errors[:field_119]).to be_present
expect(parser.errors[:field_120]).to be_present
expect(parser.errors[:field_121]).to be_present
expect(parser.errors[:field_122]).not_to be_present
expect(parser.errors[:field_123]).not_to be_present
expect(parser.errors[:field_124]).not_to be_present
expect(parser.errors[:field_125]).not_to be_present
expect(parser.errors[:field_126]).not_to be_present
expect(parser.errors[:field_127]).not_to be_present
expect(parser.errors[:field_128]).not_to be_present
end end
end end
end end

29
spec/services/bulk_upload/lettings/year2023/row_parser_spec.rb

@ -689,6 +689,35 @@ RSpec.describe BulkUpload::Lettings::Year2023::RowParser do
end end
end end
describe "#field_89, field_98 - 99" do
context "when no illness but illnesses answered" do
let(:attributes) { { bulk_upload:, field_89: "2", field_90: "1", field_91: "1", field_92: "1" } }
it "errors added to correct fields" do
expect(parser.errors[:field_90]).to be_present
expect(parser.errors[:field_91]).to be_present
expect(parser.errors[:field_92]).to be_present
expect(parser.errors[:field_93]).not_to be_present
expect(parser.errors[:field_94]).not_to be_present
expect(parser.errors[:field_95]).not_to be_present
expect(parser.errors[:field_96]).not_to be_present
expect(parser.errors[:field_97]).not_to be_present
expect(parser.errors[:field_98]).not_to be_present
expect(parser.errors[:field_99]).not_to be_present
end
end
end
describe "#field_105, field_110 - 11" do
context "when not homeless but reasonable preference for homelessness" do
let(:attributes) { { bulk_upload:, field_105: "1", field_110: "1", field_111: "1" } }
it "is not permitted" do
expect(parser.errors[:field_111]).to be_present
end
end
end
describe "#field_119" do # referral describe "#field_119" do # referral
context "when 3 ie PRP nominated by LA and owning org is LA" do context "when 3 ie PRP nominated by LA and owning org is LA" do
let(:attributes) { { bulk_upload:, field_119: "3", field_1: owning_org.old_visible_id } } let(:attributes) { { bulk_upload:, field_119: "3", field_1: owning_org.old_visible_id } }

Loading…
Cancel
Save