Sha256: c701376ddad9ba673d36eb8cab13b57c86c7ffd84daab5fe4e4a83a661cb3b4c

Contents?: true

Size: 609 Bytes

Versions: 1

Compression:

Stored size: 609 Bytes

Contents

# frozen_string_literal: true

module ActiveFields
  module Validators
    class IntegerArrayValidator < BaseValidator
      private

      def perform_validation(value)
        unless value.is_a?(Array)
          errors << :invalid
          return
        end

        validate_size(value, min: active_field.min_size, max: active_field.max_size)

        value.each do |elem_value|
          if elem_value.is_a?(Numeric)
            validate_minmax(elem_value, min: active_field.min, max: active_field.max)
          else
            errors << :invalid
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
active_fields-0.2.0 lib/active_fields/validators/integer_array_validator.rb