module Aliquot::Validator::InstanceMethods

Attributes

output[R]

Public Instance Methods

errors() click to toggle source
# File lib/aliquot/validator.rb, line 159
def errors
  valid? unless @validation

  @validation.errors
end
errors_formatted(node = [errors]) click to toggle source
# File lib/aliquot/validator.rb, line 165
def errors_formatted(node = [errors])
  node.pop.flat_map do |key, value|
    if value.is_a?(Array)
      value.map { |error| "#{(node + [key]).join('.')} #{error}" }
    else
      errors_formatted(node + [key, value])
    end
  end
end
valid?() click to toggle source
# File lib/aliquot/validator.rb, line 153
def valid?
  validate
rescue
  false
end
validate() click to toggle source
# File lib/aliquot/validator.rb, line 146
def validate
  @validation ||= @schema.call(@input)
  @output = @validation.output
  return true if @validation.success?
  raise Aliquot::ValidationError, "validation error(s), #{errors_formatted}"
end