class AttrValidator::Validators::ExclusionValidator

Public Class Methods

validate(value, options) click to toggle source

Validates that value isn’t in the specified list validation.in @param value Object object to validate exclusion @return Boolean true if object is excluded, false otherwise

# File lib/attr_validator/validators/exclusion_validator.rb, line 6
def self.validate(value, options)
  return [] if value.nil?

  errors = []
  if options[:in]
    if options[:in].include?(value)
      errors << (options[:message] || AttrValidator::I18n.t('errors.should_not_be_included_in_list', list: options[:in]))
    end
  end
  errors
end
validate_options(options) click to toggle source
# File lib/attr_validator/validators/exclusion_validator.rb, line 18
def self.validate_options(options)
  AttrValidator::ArgsValidator.is_hash!(options, :validation_rule)
  AttrValidator::ArgsValidator.has_only_allowed_keys!(options, [:in, :message], :validation_rule)
end