module PoroValidator::Validator

Public Class Methods

included(base) click to toggle source
# File lib/poro_validator/validator.rb, line 3
def self.included(base)
  base.extend(ClassMethods)
end

Public Instance Methods

errors() click to toggle source
# File lib/poro_validator/validator.rb, line 65
def errors
  @errors
end
valid?(entity) click to toggle source
# File lib/poro_validator/validator.rb, line 69
def valid?(entity)
  if entity.is_a?(::Hash)
    entity.extend(::PoroValidator::Utils::DeepSymbolizeKeys)
    entity = entity.deep_symbolize_keys
  end
  validate_entity(entity)
  errors.empty?
end

Private Instance Methods

validate_entity(entity) click to toggle source
# File lib/poro_validator/validator.rb, line 80
def validate_entity(entity)
  @errors = PoroValidator::Errors.new
  context = Context.new(entity, self, @errors)
  self.class.validations.run_validations(context)
end