Class: Minitest::BacktraceFilter

Inherits:
Object
  • Object
show all
Defined in:
lib/minitest.rb

Overview

The standard backtrace filter for minitest.

See Minitest.backtrace_filter=.

Constant Summary collapse

MT_RE =

:nodoc:

%r%lib/minitest%

Instance Method Summary collapse

Instance Method Details

#filter(bt) ⇒ Object

Filter bt to something useful. Returns the whole thing if $DEBUG.


998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
# File 'lib/minitest.rb', line 998

def filter bt
  return ["No backtrace"] unless bt

  return bt.dup if $DEBUG

  new_bt = bt.take_while { |line| line !~ MT_RE }
  new_bt = bt.select     { |line| line !~ MT_RE } if new_bt.empty?
  new_bt = bt.dup                                 if new_bt.empty?

  new_bt
end