Module: Wrong::Assert::StringDiff

Defined in:
lib/wrong/message/string_diff.rb

Class Method Summary collapse

Class Method Details

.problems_to_carrot_string(problems, length, sign) ⇒ Object



32
33
34
35
36
37
38
# File 'lib/wrong/message/string_diff.rb', line 32

def self.problems_to_carrot_string(problems, length, sign)
  carrot_string = " " * length
  problems.diffs.first.each do |add_subtract, position, character_code|
    carrot_string[position] = "^" if sign == add_subtract
  end
  carrot_string
end

.string_with_diff(original_str, problems, max_length, sign) ⇒ Object



25
26
27
28
29
30
# File 'lib/wrong/message/string_diff.rb', line 25

def self.string_with_diff(original_str, problems, max_length, sign)
  str = ""
  str << original_str.gsub("\n", "\\n").gsub("\t", "\\t").gsub("\r", "\\r") + "\n"
  str << StringDiff.problems_to_carrot_string(problems, max_length, sign) + "\n"
  str
end