Sha256: 69097817bc641d56cd4781cf3b3d249c8bc7ce2202b458c04e4aa3b60763275d

Contents?: true

Size: 597 Bytes

Versions: 3

Compression:

Stored size: 597 Bytes

Contents

# frozen_string_literal: true

module ActiveFields
  module Validators
    class DateArrayValidator < BaseValidator
      private

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

        validate_size(value, min: options[:min_size], max: options[:max_size])

        value.each do |elem_value|
          if elem_value.acts_like?(:date)
            validate_minmax(elem_value, min: options[:min], max: options[:max])
          else
            errors << :invalid
          end
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
active_fields-2.0.0 lib/active_fields/validators/date_array_validator.rb
active_fields-1.1.0 lib/active_fields/validators/date_array_validator.rb
active_fields-1.0.0 lib/active_fields/validators/date_array_validator.rb