Browse Source

Add a 2023 context

pull/2256/head
Kat 2 years ago
parent
commit
c20a0e1e90
  1. 62
      spec/models/validations/household_validations_spec.rb

62
spec/models/validations/household_validations_spec.rb

@ -385,34 +385,48 @@ RSpec.describe Validations::HouseholdValidations do
end end
describe "#validate_person_age_matches_economic_status" do describe "#validate_person_age_matches_economic_status" do
context "when the household contains a person under 16" do context "with 2023 logs" do
it "validates that person's economic status must be Child" do let(:log_date) { Time.zone.local(2023, 4, 1) }
record.age2 = 14
record.ecstat2 = 1 before do
household_validator.validate_person_age_matches_economic_status(record) Timecop.freeze(log_date)
expect(record.errors["ecstat2"]) Singleton.__init__(FormHandler)
.to include(match I18n.t("validations.household.ecstat.child_under_16", person_num: 2))
expect(record.errors["age2"])
.to include(match I18n.t("validations.household.age.child_under_16_ecstat", person_num: 2))
end end
it "expects that person's economic status is Child" do after do
record.age2 = 14 Timecop.return
record.ecstat2 = 9 Singleton.__init__(FormHandler)
household_validator.validate_person_age_matches_economic_status(record)
expect(record.errors["ecstat2"]).to be_empty
expect(record.errors["age2"]).to be_empty
end end
it "validates that a person with economic status 'child' must be under 16" do context "when the household contains a person under 16" do
record.age2 = 21 it "validates that person's economic status must be Child" do
record.relat2 = "C" record.age2 = 14
record.ecstat2 = 9 record.ecstat2 = 1
household_validator.validate_person_age_matches_economic_status(record) household_validator.validate_person_age_matches_economic_status(record)
expect(record.errors["ecstat2"]) expect(record.errors["ecstat2"])
.to include(match I18n.t("validations.household.ecstat.child_over_16", person_num: 2)) .to include(match I18n.t("validations.household.ecstat.child_under_16", person_num: 2))
expect(record.errors["age2"]) expect(record.errors["age2"])
.to include(match I18n.t("validations.household.age.child_over_16", person_num: 2)) .to include(match I18n.t("validations.household.age.child_under_16_ecstat", person_num: 2))
end
it "expects that person's economic status is Child" do
record.age2 = 14
record.ecstat2 = 9
household_validator.validate_person_age_matches_economic_status(record)
expect(record.errors["ecstat2"]).to be_empty
expect(record.errors["age2"]).to be_empty
end
it "validates that a person with economic status 'child' must be under 16" do
record.age2 = 21
record.relat2 = "C"
record.ecstat2 = 9
household_validator.validate_person_age_matches_economic_status(record)
expect(record.errors["ecstat2"])
.to include(match I18n.t("validations.household.ecstat.child_over_16", person_num: 2))
expect(record.errors["age2"])
.to include(match I18n.t("validations.household.age.child_over_16", person_num: 2))
end
end end
end end

Loading…
Cancel
Save