diff --git a/app/models/case_log.rb b/app/models/case_log.rb index eb092b4ae..7b6b9fdc1 100644 --- a/app/models/case_log.rb +++ b/app/models/case_log.rb @@ -1,7 +1,5 @@ class CaseLogValidator < ActiveModel::Validator - # Methods to be used on save and continue need to be named 'validate_' - # followed by field name this is how the metaprogramming of the method - # name being call in the validate method works. + # Validations methods need to be called 'validate_' to run on model save include HouseholdValidations include PropertyValidations include FinancialValidations @@ -17,8 +15,6 @@ class CaseLogValidator < ActiveModel::Validator public_send("validate_#{question_to_validate}", record) end else - # This assumes that all methods in this class other than this one are - # validations to be run validation_methods = public_methods.select { |method| method.starts_with?("validate") } - [__callee__] validation_methods.each { |meth| public_send(meth, record) } end diff --git a/app/validations/financial_validations.rb b/app/validations/financial_validations.rb index ee294e52a..90093e134 100644 --- a/app/validations/financial_validations.rb +++ b/app/validations/financial_validations.rb @@ -1,4 +1,5 @@ module FinancialValidations + # Validations methods need to be called 'validate_' to run on model save def validate_outstanding_rent_amount(record) if record.outstanding_rent_or_charges == "Yes" && record.outstanding_amount.blank? record.errors.add :outstanding_amount, "You must answer the oustanding amout question if you have outstanding rent or charges." diff --git a/app/validations/household_validations.rb b/app/validations/household_validations.rb index 39e9f34f4..8ff4e684a 100644 --- a/app/validations/household_validations.rb +++ b/app/validations/household_validations.rb @@ -1,4 +1,5 @@ module HouseholdValidations + # Validations methods need to be called 'validate_' to run on model save def validate_person_1_age(record) if record.person_1_age && !/^[1-9][0-9]?$|^120$/.match?(record.person_1_age.to_s) record.errors.add :person_1_age, "Tenant age must be between 0 and 120" diff --git a/app/validations/property_validations.rb b/app/validations/property_validations.rb index c453206ac..9d40a2ee5 100644 --- a/app/validations/property_validations.rb +++ b/app/validations/property_validations.rb @@ -1,4 +1,5 @@ module PropertyValidations + # Validations methods need to be called 'validate_' to run on model save def validate_property_number_of_times_relet(record) if record.property_number_of_times_relet && !/^[1-9]$|^0[1-9]$|^1[0-9]$|^20$/.match?(record.property_number_of_times_relet.to_s) record.errors.add :property_number_of_times_relet, "Must be between 0 and 20" diff --git a/app/validations/tenancy_validations.rb b/app/validations/tenancy_validations.rb index 813cbabbd..063b4672c 100644 --- a/app/validations/tenancy_validations.rb +++ b/app/validations/tenancy_validations.rb @@ -1,4 +1,5 @@ module TenancyValidations + # Validations methods need to be called 'validate_' to run on model save def validate_fixed_term_tenancy(record) is_present = record.fixed_term_tenancy.present? is_in_range = record.fixed_term_tenancy.to_i.between?(2, 99)