Class: CoordinateValidator

Inherits:
ActiveModel::EachValidator
  • Object
show all
Defined in:
lib/active_validation/validators/coordinate_validator.rb

Instance Method Summary collapse

Instance Method Details

#validate_each(record, attribute, value) ⇒ Object

rubocop:disable Metrics/LineLength



8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/active_validation/validators/coordinate_validator.rb', line 8

def validate_each(record, attribute, value)
  boundary = options[:boundary] || :coordinate
  unless BOUNDARIES.include?(boundary)
    raise ArgumentError,
          "Unknown boundary: #{boundary.inspect}. Valid boundaries are: #{BOUNDARIES.map(&:inspect).join(', ')}"
  end

  return if valid?(value, options)

  record.errors[attribute] <<
    (options[:message] || I18n.t("active_validation.errors.messages.coordinate.#{boundary}"))
end