summaryrefslogtreecommitdiff
path: root/lib/test/unit/testcase.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/test/unit/testcase.rb')
-rw-r--r--lib/test/unit/testcase.rb15
1 files changed, 3 insertions, 12 deletions
diff --git a/lib/test/unit/testcase.rb b/lib/test/unit/testcase.rb
index c831b764a5..f258c23ca1 100644
--- a/lib/test/unit/testcase.rb
+++ b/lib/test/unit/testcase.rb
@@ -9,6 +9,7 @@ require 'test/unit/failure'
require 'test/unit/error'
require 'test/unit/testsuite'
require 'test/unit/assertionfailederror'
+require 'test/unit/util/backtracefilter'
module Test
module Unit
@@ -20,6 +21,7 @@ module Test
# collecting its results into a Test::Unit::TestResult object.
class TestCase
include Assertions
+ include Util::BacktraceFilter
attr_reader :method_name
@@ -116,18 +118,7 @@ module Test
def add_failure(message, all_locations=caller()) # :nodoc:
@test_passed = false
- assertions_pattern = /[^A-Za-z_]assertions\.rb:/
- if (all_locations.detect { |entry| entry =~ assertions_pattern })
- all_locations.shift
- until (all_locations[0] =~ assertions_pattern || all_locations.empty?)
- all_locations.shift
- end
- location = all_locations.detect { |entry| entry !~ assertions_pattern }
- else
- location = all_locations[0]
- end
- location = location[/^.+:\d+/]
- @_result.add_failure(Failure.new("#{name} [#{location}]", message))
+ @_result.add_failure(Failure.new(name, filter_backtrace(all_locations), message))
end
private :add_failure