Methods
public class
public instance
Public class methods
new
(*patterns)
[show source]
# File lib/spec/runner/backtrace_tweaker.rb, line 4 def initialize(*patterns) @ignore_patterns = [] end
Public instance methods
clean_up_double_slashes
(line)
[show source]
# File lib/spec/runner/backtrace_tweaker.rb, line 8 def clean_up_double_slashes(line) line.gsub!('//','/') end
ignore_patterns
(*patterns)
[show source]
# File lib/spec/runner/backtrace_tweaker.rb, line 12 def ignore_patterns(*patterns) # do nothing. Only QuietBacktraceTweaker ignores patterns. end
ignored_patterns
()
[show source]
# File lib/spec/runner/backtrace_tweaker.rb, line 16 def ignored_patterns [] end
tweak_backtrace
(error)
[show source]
# File lib/spec/runner/backtrace_tweaker.rb, line 20 def tweak_backtrace(error) return if error.backtrace.nil? tweaked = error.backtrace.collect do |message| clean_up_double_slashes(message) kept_lines = message.split("\n").select do |line| ignored_patterns.each do |ignore| break if line =~ ignore end end kept_lines.empty?? nil : kept_lines.join("\n") end error.set_backtrace(tweaked.select {|line| line}) end