Sha256: 2fd42df7cc12bd17f99fe8f85596d9a5ef378c23bce5684b104457f1638136d6

Contents?: true

Size: 385 Bytes

Versions: 41

Compression:

Stored size: 385 Bytes

Contents

# frozen_string_literal: true

class MiniDefender::Rules::Distinct < MiniDefender::Rule
  def self.signature
    'distinct'
  end

  def passes?(attribute, value, validator)
    validator
      .neighbors(attribute)
      .reject { |k, v| k == attribute }
      .none? { |_, v| v == value }
  end

  def message(attribute, value, validator)
    'The value should be unique.'
  end
end

Version data entries

41 entries across 41 versions & 1 rubygems

Version Path
mini_defender-0.6.8 lib/mini_defender/rules/distinct.rb
mini_defender-0.6.7 lib/mini_defender/rules/distinct.rb
mini_defender-0.6.5 lib/mini_defender/rules/distinct.rb
mini_defender-0.6.4 lib/mini_defender/rules/distinct.rb
mini_defender-0.6.3 lib/mini_defender/rules/distinct.rb
mini_defender-0.6.2 lib/mini_defender/rules/distinct.rb
mini_defender-0.6.1 lib/mini_defender/rules/distinct.rb
mini_defender-0.6.0 lib/mini_defender/rules/distinct.rb
mini_defender-0.5.8 lib/mini_defender/rules/distinct.rb
mini_defender-0.5.7 lib/mini_defender/rules/distinct.rb
mini_defender-0.5.6 lib/mini_defender/rules/distinct.rb
mini_defender-0.5.5 lib/mini_defender/rules/distinct.rb
mini_defender-0.5.4 lib/mini_defender/rules/distinct.rb
mini_defender-0.5.3 lib/mini_defender/rules/distinct.rb
mini_defender-0.5.2 lib/mini_defender/rules/distinct.rb
mini_defender-0.5.1 lib/mini_defender/rules/distinct.rb
mini_defender-0.5.0 lib/mini_defender/rules/distinct.rb
mini_defender-0.4.1 lib/mini_defender/rules/distinct.rb
mini_defender-0.4.0 lib/mini_defender/rules/distinct.rb
mini_defender-0.3.14 lib/mini_defender/rules/distinct.rb