summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHiroshi SHIBATA <[email protected]>2023-08-29 13:44:03 +0900
committerHiroshi SHIBATA <[email protected]>2023-08-29 15:05:30 +0900
commit141102b0b08c4feb682210033cac8d0f042c4beb ()
treeb93ca7dc2f6849cef12e5ea7425939ce5aa4f40e
parent589cd0e511304be1419d4d7191eaf1063ef83fd5 (diff)
Expose Test.filter_backtrace for the default gems.
Notes: Merged: https://.com/ruby/ruby/pull/8313
-rw-r--r--tool/lib/core_assertions.rb37
-rw-r--r--tool/lib/test/unit.rb36
2 files changed, 37 insertions, 36 deletions
@@ -1,6 +1,43 @@
# frozen_string_literal: true
module Test
module Unit
module Assertions
def assert_raises(*exp, &b)
@@ -24,42 +24,6 @@ require 'optparse'
# See Test::Unit
module Test
- class << self
- ##
- # Filter object for backtraces.
-
- attr_accessor :backtrace_filter
- end
-
- class BacktraceFilter # :nodoc:
- def filter bt
- return ["No backtrace"] unless bt
-
- new_bt = []
- pattern = %r[/(?:lib\/test/|core_assertions\.rb:)]
-
- unless $DEBUG then
- bt.each do |line|
- break if pattern.match?(line)
- new_bt << line
- end
-
- new_bt = bt.reject { |line| pattern.match?(line) } if new_bt.empty?
- new_bt = bt.dup if new_bt.empty?
- else
- new_bt = bt.dup
- end
-
- new_bt
- end
- end
-
- self.backtrace_filter = BacktraceFilter.new
-
- def self.filter_backtrace bt # :nodoc:
- backtrace_filter.filter bt
- end
-
##
# Test::Unit is an implementation of the xUnit testing framework for Ruby.
module Unit