diff options
author | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-01-12 13:33:16 +0000 |
---|---|---|
committer | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-01-12 13:33:16 +0000 |
commit | 61dcd3d1d7ca66b570543ceb77660181ee77a1a3 (patch) | |
tree | 4aea3d099f53d14d32cf5f250072b9af22b6d2ab /lib | |
parent | 1fbaa2a5af038bb20b58652b3ec51b19b0f118d8 (diff) |
merges r21449 from trunk into ruby_1_9_1.
* lib/test/unit/assertions.rb (assert_nothing_raised): removes the
current trace to get rid of an issue of MiniTest::Unit#location.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@21465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
-rw-r--r-- | lib/test/unit/assertions.rb | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/test/unit/assertions.rb b/lib/test/unit/assertions.rb index c15432f058..ac3ecf93c7 100644 --- a/lib/test/unit/assertions.rb +++ b/lib/test/unit/assertions.rb @@ -22,12 +22,18 @@ module Test msg = args.pop end begin - yield + line = __LINE__; yield rescue Exception => e - if ((args.empty? && !e.instance_of?(MiniTest::Assertion)) || + bt = e.backtrace + as = e.instance_of?(MiniTest::Assertion) + if as + ans = /\A#{Regexp.quote(__FILE__)}:#{line}:in /o + bt.reject! {|line| ans =~ line} + end + if ((args.empty? && !as) || args.any? {|a| a.instance_of?(Module) ? e.is_a?(a) : e.class == a }) msg = message(msg) { "Exception raised:\n<#{mu_pp(e)}>" } - raise MiniTest::Assertion, msg.call, e.backtrace + raise MiniTest::Assertion, msg.call, bt else raise end |