Sha256: 1ff926ce04f6f7deda6c8367dad44bdfe8f14e405d6e518c44d621d6f7b0416f
Contents?: true
Size: 791 Bytes
Versions: 8
Compression:
Stored size: 791 Bytes
Contents
module Renalware module Patients class BloodPressureValidator < ActiveModel::Validator include NumericRangeValidations MIN_VALUE = 20 MAX_VALUE = 300 def validate(bp) apply_validations(bp) unless bp.blank? end private def apply_validations(bp) validate_number_is_in_range(bp, :systolic, bp.systolic, MIN_VALUE, MAX_VALUE) validate_number_is_in_range(bp, :diastolic, bp.diastolic, MIN_VALUE, MAX_VALUE) validate_diastolic_less_than_systolic(bp) end def validate_diastolic_less_than_systolic(bp) errors = bp.errors return if errors.any? unless bp.diastolic < bp.systolic errors.add(:diastolic, :must_be_less_than_systolic) end end end end end
Version data entries
8 entries across 8 versions & 1 rubygems