class TextChecker::Comparator

Public Class Methods

new(config = {}) click to toggle source
# File lib/comparators/comparator.rb, line 2
def initialize(config = {})
  @config = config
end

Public Instance Methods

compare(source) click to toggle source
# File lib/comparators/comparator.rb, line 6
def compare(source)
  @config[:error] || error_message(source) unless success?(transform(source))
end
expected() click to toggle source
# File lib/comparators/comparator.rb, line 10
def expected
  transform @config[:expected]
end

Private Instance Methods

modifiers() click to toggle source
# File lib/comparators/comparator.rb, line 16
def modifiers
  modifiers = []
  modifiers << TextChecker::IgnoreWhitespace if @config[:ignore_whitespace]
  modifiers << TextChecker::IgnoreCase if @config[:ignore_case]
  modifiers
end
transform(source) click to toggle source
# File lib/comparators/comparator.rb, line 23
def transform(source)
  modifiers.inject(source) { |text, modifier| modifier.apply(text) }
end