Class: Spec::Runner::QuietBacktraceTweaker
- Inherits:
-
BacktraceTweaker
- Object
- BacktraceTweaker
- Spec::Runner::QuietBacktraceTweaker
- Defined in:
- lib/spec/runner/backtrace_tweaker.rb
Overview
Tweaks raised Exceptions to mask noisy (unneeded) parts of the backtrace
Constant Summary collapse
- IGNORE_PATTERNS =
spec_files + [ /\/lib\/ruby\//, /bin\/spec:/, /bin\/rcov:/, /lib\/rspec-rails/, /vendor\/rails/, # TextMate's Ruby and RSpec plugins /Ruby\.tmbundle\/Support\/tmruby.rb:/, /RSpec\.tmbundle\/Support\/lib/, /temp_textmate\./, /mock_frameworks\/rspec/, /spec_server/ ]
Instance Method Summary collapse
Methods inherited from BacktraceTweaker
Instance Method Details
#tweak_backtrace(error) ⇒ Object
43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/spec/runner/backtrace_tweaker.rb', line 43 def tweak_backtrace(error) return if error.backtrace.nil? tweaked = error.backtrace.collect do || clean_up_double_slashes() kept_lines = .split("\n").select do |line| IGNORE_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 |