Expose Test.filter_backtrace for the default gems.
This commit is contained in:
parent
589cd0e511
commit
141102b0b0
Notes:
git
2023-08-29 06:05:50 +00:00
@ -1,6 +1,43 @@
|
|||||||
# frozen_string_literal: true
|
# frozen_string_literal: true
|
||||||
|
|
||||||
module Test
|
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
|
||||||
|
|
||||||
module Unit
|
module Unit
|
||||||
module Assertions
|
module Assertions
|
||||||
def assert_raises(*exp, &b)
|
def assert_raises(*exp, &b)
|
||||||
|
@ -24,42 +24,6 @@ require 'optparse'
|
|||||||
# See Test::Unit
|
# See Test::Unit
|
||||||
module Test
|
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.
|
# Test::Unit is an implementation of the xUnit testing framework for Ruby.
|
||||||
module Unit
|
module Unit
|
||||||
|
Loading…
x
Reference in New Issue
Block a user