Class: Buildr::TestFramework::TestResult::RSpecResultHandler::BacktraceTweaker

Inherits:
Object
  • Object
show all
Defined in:
lib/buildr/java/test_result.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeBacktraceTweaker

Returns a new instance of BacktraceTweaker.



128
129
130
131
132
133
# File 'lib/buildr/java/test_result.rb', line 128

def initialize
  @ignore_patterns = ::Spec::Runner::QuietBacktraceTweaker::IGNORE_PATTERNS.dup
  # ignore jruby/jtestr backtrace
  ignore_patterns << /org\.jruby\.javasupport\.JavaMethod\./
  ignore_patterns << /jtestr.*\.jar!/i << /runner\.rb/
end

Instance Attribute Details

#ignore_patternsObject (readonly)

Returns the value of attribute ignore_patterns.



127
128
129
# File 'lib/buildr/java/test_result.rb', line 127

def ignore_patterns
  @ignore_patterns
end

Instance Method Details

#clean_up_double_slashes(line) ⇒ Object



135
136
137
# File 'lib/buildr/java/test_result.rb', line 135

def clean_up_double_slashes(line)
  line.gsub!('//','/')
end

#tweak_backtrace(error) ⇒ Object



139
140
141
142
143
144
145
146
147
148
149
150
151
152
# File 'lib/buildr/java/test_result.rb', line 139

def tweak_backtrace(error)
  return if error.backtrace.nil?
  error.backtrace.collect! do |line|
    clean_up_double_slashes(line)
    ignore_patterns.each do |ignore|
      if line =~ ignore
        line = nil
        break
      end
    end
    line
  end
  error.backtrace.compact!
end