From 5625a488faed75d031950c0f768d704212f43a2e Mon Sep 17 00:00:00 2001 From: Kat Date: Thu, 16 Mar 2023 14:45:39 +0000 Subject: [PATCH] Remove child income validation for 22/23 --- app/models/validations/sales/financial_validations.rb | 2 +- .../validations/sales/financial_validations_spec.rb | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/app/models/validations/sales/financial_validations.rb b/app/models/validations/sales/financial_validations.rb index afb8593a8..1dd484eda 100644 --- a/app/models/validations/sales/financial_validations.rb +++ b/app/models/validations/sales/financial_validations.rb @@ -70,7 +70,7 @@ module Validations::Sales::FinancialValidations def validate_child_income(record) return unless record.income2 && record.ecstat2 - if record.income2.positive? && is_economic_status_child?(record.ecstat2) + if record.income2.positive? && is_economic_status_child?(record.ecstat2) && record.form.start_date.year >= 2023 record.errors.add :ecstat2, I18n.t("validations.financial.income.child_has_income") record.errors.add :income2, I18n.t("validations.financial.income.child_has_income") end diff --git a/spec/models/validations/sales/financial_validations_spec.rb b/spec/models/validations/sales/financial_validations_spec.rb index 350cc66ef..b637d10a9 100644 --- a/spec/models/validations/sales/financial_validations_spec.rb +++ b/spec/models/validations/sales/financial_validations_spec.rb @@ -251,6 +251,7 @@ RSpec.describe Validations::Sales::FinancialValidations do context "when buyer 2 is a child" do it "does not add an error if buyer 2 has no income" do + record.saledate = Time.zone.local(2023, 4, 3) record.ecstat2 = 9 record.income2 = 0 financial_validator.validate_child_income(record) @@ -258,12 +259,21 @@ RSpec.describe Validations::Sales::FinancialValidations do end it "adds errors if buyer 2 has an income" do + record.saledate = Time.zone.local(2023, 4, 3) record.ecstat2 = 9 record.income2 = 40_000 financial_validator.validate_child_income(record) expect(record.errors["ecstat2"]).to include(match I18n.t("validations.financial.income.child_has_income")) expect(record.errors["income2"]).to include(match I18n.t("validations.financial.income.child_has_income")) end + + it "does not add an error if the saledate is before the 23/24 collection window" do + record.saledate = Time.zone.local(2022, 4, 3) + record.ecstat2 = 9 + record.income2 = 40_000 + financial_validator.validate_child_income(record) + expect(record.errors).to be_empty + end end end