class Anodator::CheckResult

Attributes

level[R]
message[R]
target_numbers[R]

Public Class Methods

new(target_numbers, message, level) click to toggle source
# File lib/anodator/check_result.rb, line 7
def initialize(target_numbers, message, level)
  @target_numbers = target_numbers.to_a
  @message        = message.to_s
  @level          = level

  if @target_numbers.size.zero?
    raise ArgumentError.new("target numbers cannot be blank")
  end
  if @message.split(//).size.zero?
    raise ArgumentError.new("message cannot be blank")
  end
  unless Rule::ERROR_LEVELS.values.include?(level)
    raise ArgumentError.new("level must be #{Rule::ERROR_LEVEL_NAMES.join(", ")}")
  end
end

Public Instance Methods

method_missing(message, *args) click to toggle source
Calls superclass method
# File lib/anodator/check_result.rb, line 28
def method_missing(message, *args)
  if message.to_s =~ /(\A[a-zA-Z_]+)\?\Z/
    if Rule::ERROR_LEVELS.keys.include?($1.to_sym)
      return Rule::ERROR_LEVELS[$1.to_sym] == @level
    end
  end

  super
end
to_s() click to toggle source
# File lib/anodator/check_result.rb, line 23
def to_s
  buf = "[#{Rule.level_expression(@level)}]\t"
  buf += @message + " |#{@target_numbers.join(", ")}|"
end