class HashValidator::Validator::MultipleValidator

Public Class Methods

new() click to toggle source
Calls superclass method HashValidator::Validator::Base::new
# File lib/hash_validator/validators/multiple_validator.rb, line 4
def initialize
  super('_multiple')  # The name of the validator, underscored as it won't usually be directly invoked (invoked through use of validator)
end

Public Instance Methods

should_validate?(validation) click to toggle source
# File lib/hash_validator/validators/multiple_validator.rb, line 8
def should_validate?(validation)
  validation.is_a?(Validations::Multiple)
end
validate(key, value, validations, errors) click to toggle source
# File lib/hash_validator/validators/multiple_validator.rb, line 12
def validate(key, value, validations, errors)
  multiple_errors = []

  validations.validations.each do |validation|
    validation_error = {}
    ::HashValidator.validator_for(validation).validate(key, value, validation, validation_error)
    multiple_errors << validation_error[key] if validation_error[key]
  end

  errors[key] = multiple_errors.join(', ') if multiple_errors.any?
end