Sha256: 9fc44e8deb30a04526433f52b96bfdb3ad348529ff4af26ba1956a7652709381

Contents?: true

Size: 475 Bytes

Versions: 1

Compression:

Stored size: 475 Bytes

Contents

# frozen_string_literal: true

module ActiveFields
  module Validators
    class BooleanValidator < BaseValidator
      private

      def perform_validation(value)
        if value.nil?
          errors << :exclusion unless active_field.nullable?
        elsif value.is_a?(FalseClass)
          errors << :required if active_field.required?
        elsif value.is_a?(TrueClass)
          nil
        else
          errors << :invalid
        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/boolean_validator.rb