module Kwalify::ErrorHelper

Public Class Methods

_build_message(message_key, val, args) click to toggle source
# File lib/kwalify/errors.rb, line 114
def _build_message(message_key, val, args)
  msg = Kwalify.msg(message_key)
  assert_error("message_key=#{message_key.inspect}") unless msg
  msg = msg % args if args
  msg = "'#{val.to_s.gsub(/\n/, '\n')}': #{msg}" if !val.nil? && Types.scalar?(val)
  return msg;
end
validate_error(error_symbol, rule, path, val, args=nil) click to toggle source
# File lib/kwalify/errors.rb, line 101
def validate_error(error_symbol, rule, path, val, args=nil)
  msg = _build_message(error_symbol, val, args);
  path = '/'+path.join('/') if path.is_a?(Array)
  return ValidationError.new(msg, path, val, rule, error_symbol)
end

Public Instance Methods

assert_error(message="") click to toggle source

module_function

# File lib/kwalify/errors.rb, line 97
def assert_error(message="")
  raise AssertionError.new(message)
end
schema_error(error_symbol, rule, path, val, args=nil) click to toggle source
# File lib/kwalify/errors.rb, line 108
def schema_error(error_symbol, rule, path, val, args=nil)
  msg = _build_message(error_symbol, val, args);
  path = '/'+path.join('/') if path.is_a?(Array)
  return SchemaError.new(msg, path, val, rule, error_symbol)
end

Private Instance Methods

_build_message(message_key, val, args) click to toggle source
# File lib/kwalify/errors.rb, line 114
def _build_message(message_key, val, args)
  msg = Kwalify.msg(message_key)
  assert_error("message_key=#{message_key.inspect}") unless msg
  msg = msg % args if args
  msg = "'#{val.to_s.gsub(/\n/, '\n')}': #{msg}" if !val.nil? && Types.scalar?(val)
  return msg;
end
validate_error(error_symbol, rule, path, val, args=nil) click to toggle source
# File lib/kwalify/errors.rb, line 101
def validate_error(error_symbol, rule, path, val, args=nil)
  msg = _build_message(error_symbol, val, args);
  path = '/'+path.join('/') if path.is_a?(Array)
  return ValidationError.new(msg, path, val, rule, error_symbol)
end