Sha256: 2aaf5f742e7fdf840db3f952fc8527561dbefe124787b23e732a3fb0fdcb8e83

Contents?: true

Size: 542 Bytes

Versions: 15

Compression:

Stored size: 542 Bytes

Contents

# frozen_string_literal: true

class MiniDefender::Rules::Array < MiniDefender::Rule
  def self.signature
    'array'
  end

  def initialize(data_mode = 'none')
    @data_mode = data_mode
  end

  def self.make(args)
    new(args[0] || 'none')
  end

  def priority
    500
  end

  def coerce(value)
    @data_mode == 'all' ? value : []
  end

  def force_coerce?
    true
  end

  def passes?(attribute, value, validator)
    value.is_a?(Array)
  end

  def message(attribute, value, validator)
    "The field must be an array."
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
mini_defender-0.6.8 lib/mini_defender/rules/array.rb
mini_defender-0.6.7 lib/mini_defender/rules/array.rb
mini_defender-0.6.5 lib/mini_defender/rules/array.rb
mini_defender-0.6.4 lib/mini_defender/rules/array.rb
mini_defender-0.6.3 lib/mini_defender/rules/array.rb
mini_defender-0.6.2 lib/mini_defender/rules/array.rb
mini_defender-0.6.1 lib/mini_defender/rules/array.rb
mini_defender-0.6.0 lib/mini_defender/rules/array.rb
mini_defender-0.5.8 lib/mini_defender/rules/array.rb
mini_defender-0.5.7 lib/mini_defender/rules/array.rb
mini_defender-0.5.6 lib/mini_defender/rules/array.rb
mini_defender-0.5.5 lib/mini_defender/rules/array.rb
mini_defender-0.5.4 lib/mini_defender/rules/array.rb
mini_defender-0.5.3 lib/mini_defender/rules/array.rb
mini_defender-0.5.2 lib/mini_defender/rules/array.rb