class RediSearch::Validations::Inclusion

Attributes

allow_nil[R]
allow_nil?[R]
field[R]
within[R]

Public Class Methods

new(field:, within:, allow_nil: false) click to toggle source
# File lib/redi_search/validations/inclusion.rb, line 6
def initialize(field:, within:, allow_nil: false)
  @field = field
  @within = within
  @allow_nil = allow_nil
end

Public Instance Methods

validate!(object) click to toggle source
# File lib/redi_search/validations/inclusion.rb, line 12
def validate!(object)
  value = object.send(field)

  return true if within.include?(value) || (allow_nil? && value.nil?)

  raise ValidationError, "#{value.inspect} not included in #{within}"
end