Method: Minitest::BacktraceFilter#filter

Defined in:
lib/minitest.rb

#filter(bt) ⇒ Object

Filter bt to something useful. Returns the whole thing if $DEBUG (ruby) or $MT_DEBUG (env).



1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
# File 'lib/minitest.rb', line 1191

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

  return bt.dup if $DEBUG || ENV["MT_DEBUG"]

  new_bt = bt.take_while { |line| !regexp.match? line.to_s }
  new_bt = bt.select     { |line| !regexp.match? line.to_s } if new_bt.empty?
  new_bt = bt.dup                                            if new_bt.empty?

  new_bt
end