diff --git a/app/models/derived_variables/lettings_log_variables.rb b/app/models/derived_variables/lettings_log_variables.rb index ac17e0219..56b47e9ad 100644 --- a/app/models/derived_variables/lettings_log_variables.rb +++ b/app/models/derived_variables/lettings_log_variables.rb @@ -216,8 +216,6 @@ private (2..8).each do |idx| if age_under_16?(idx) self["ecstat#{idx}"] = 9 - elsif public_send("ecstat#{idx}") == 9 && age_known?(idx) - self["ecstat#{idx}"] = nil end end end diff --git a/app/models/form/lettings/questions/person_working_situation.rb b/app/models/form/lettings/questions/person_working_situation.rb index 38fb820ef..974bb01b8 100644 --- a/app/models/form/lettings/questions/person_working_situation.rb +++ b/app/models/form/lettings/questions/person_working_situation.rb @@ -25,6 +25,7 @@ class Form::Lettings::Questions::PersonWorkingSituation < ::Form::Question "value" => "Child under 16", "depends_on" => [ { "age#{@person_index}_known" => 1 }, + { "age#{@person_index}_known" => nil }, { "age#{@person_index}" => { "operator" => "<", "operand" => 16 } }, ], }, diff --git a/app/models/validations/household_validations.rb b/app/models/validations/household_validations.rb index 90569a8ee..52c1de668 100644 --- a/app/models/validations/household_validations.rb +++ b/app/models/validations/household_validations.rb @@ -69,14 +69,12 @@ module Validations::HouseholdValidations end def validate_person_age_matches_economic_status(record) - return if record.form.start_year_after_2024? - (2..8).each do |person_num| age = record.public_send("age#{person_num}") economic_status = record.public_send("ecstat#{person_num}") next unless age && economic_status - if age < 16 && !economic_status_is_child_other_or_refused?(economic_status) + if age < 16 && !economic_status_is_child_other_or_refused?(economic_status) && !record.form.start_year_after_2024? record.errors.add "ecstat#{person_num}", I18n.t("validations.household.ecstat.child_under_16", person_num:) record.errors.add "age#{person_num}", I18n.t("validations.household.age.child_under_16_ecstat", person_num:) end diff --git a/spec/models/form/lettings/questions/person_working_situation_spec.rb b/spec/models/form/lettings/questions/person_working_situation_spec.rb index 5f4c513f4..b4af7eb62 100644 --- a/spec/models/form/lettings/questions/person_working_situation_spec.rb +++ b/spec/models/form/lettings/questions/person_working_situation_spec.rb @@ -33,6 +33,7 @@ RSpec.describe Form::Lettings::Questions::PersonWorkingSituation, type: :model d "9" => { "depends_on" => [ { "age2_known" => 1 }, + { "age2_known" => nil }, { "age2" => { "operand" => 16, "operator" => "<" } }, ], "value" => "Child under 16",