Sha256: ac25a544258910900eaa94284451585841c944da9b1e2f09a9ea9284f85863a6

Contents?: true

Size: 492 Bytes

Versions: 11

Compression:

Stored size: 492 Bytes

Contents

class HashValidator::Base
  attr_accessor :hash, :validations, :errors


  def initialize(hash, validations)
    self.errors      = {}
    self.hash        = hash
    self.validations = validations

    validate
  end

  def valid?
    errors.empty?
  end

  def self.validate(hash, validations)
    new(hash, validations)
  end


private
  def validate
    HashValidator.validator_for(hash).validate(:base, self.hash, self.validations, self.errors)
    self.errors = errors[:base]
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
hash_validator-0.3.0 lib/hash_validator/base.rb
hash_validator-0.2.7 lib/hash_validator/base.rb
hash_validator-0.2.6 lib/hash_validator/base.rb
hash_validator-0.2.5 lib/hash_validator/base.rb
hash_validator-0.2.4 lib/hash_validator/base.rb
hash_validator-0.2.3 lib/hash_validator/base.rb
hash_validator-0.2.2 lib/hash_validator/base.rb
hash_validator-0.2.1 lib/hash_validator/base.rb
hash_validator-0.1.0 lib/hash_validator/base.rb
hash_validator-0.0.2 lib/hash_validator/base.rb
hash_validator-0.0.1 lib/hash_validator/base.rb