Class: Minitest::BacktraceFilter
Overview
The standard backtrace filter for minitest.
See Minitest.backtrace_filter=.
Constant Summary collapse
- MT_RE =
:nodoc:
%r%lib/minitest|internal:warning%
Instance Attribute Summary collapse
-
#regexp ⇒ Object
Returns the value of attribute regexp.
Instance Method Summary collapse
-
#filter(bt) ⇒ Object
Filter
bt
to something useful. -
#initialize(regexp = MT_RE) ⇒ BacktraceFilter
constructor
A new instance of BacktraceFilter.
Constructor Details
#initialize(regexp = MT_RE) ⇒ BacktraceFilter
Returns a new instance of BacktraceFilter.
1146 1147 1148 |
# File 'lib/minitest.rb', line 1146 def initialize regexp = MT_RE self.regexp = regexp end |
Instance Attribute Details
#regexp ⇒ Object
Returns the value of attribute regexp.
1144 1145 1146 |
# File 'lib/minitest.rb', line 1144 def regexp @regexp end |
Instance Method Details
#filter(bt) ⇒ Object
Filter bt
to something useful. Returns the whole thing if $DEBUG (ruby) or $MT_DEBUG (env).
1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 |
# File 'lib/minitest.rb', line 1154 def filter bt return ["No backtrace"] unless bt return bt.dup if $DEBUG || ENV["MT_DEBUG"] new_bt = bt.take_while { |line| line.to_s !~ regexp } new_bt = bt.select { |line| line.to_s !~ regexp } if new_bt.empty? new_bt = bt.dup if new_bt.empty? new_bt end |