diff options
author | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-08-31 07:35:06 +0000 |
---|---|---|
committer | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-08-31 07:35:06 +0000 |
commit | 7b55994cea8da1f64d287aa174b5d16be884987c (patch) | |
tree | fec22db4bff318a0491330c57bff40c9c1e76574 /lib | |
parent | 1f45273499bece70fc9908488740c132a51cef99 (diff) |
merge revision(s) 45953,45961: [Backport #9767]
* lib/test/unit/parallel.rb: fix test-all parallel failure if a test
is skipped after raise.
DL::TestFunc#test_sinf is skipped after raise on mingw ruby.
But it causes Mashal.load failure due to undefined class/module
DL::DLError when doing test-all parallel and test-all doesn't
complete. We create new MiniTest::Skip object to avoid Mashal.load
failure.
[ruby-core:62133] [Bug #9767]
* test/testunit/test_parallel.rb (TestParallel): add a test.
* test/testunit/tests_for_parallel/ptest_forth.rb: ditto.
But it causes Marshal.load failure due to undefined class/module
complete. We create new MiniTest::Skip object to avoid Marshal.load
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_0_0@47338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
-rw-r--r-- | lib/test/unit/parallel.rb | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/test/unit/parallel.rb b/lib/test/unit/parallel.rb index d1891838f7..f8fa01ebdc 100644 --- a/lib/test/unit/parallel.rb +++ b/lib/test/unit/parallel.rb @@ -155,6 +155,11 @@ module Test end def puke(klass, meth, e) + if e.is_a?(MiniTest::Skip) + new_e = MiniTest::Skip.new(e.message) + new_e.set_backtrace(e.backtrace) + e = new_e + end @partial_report << [klass.name, meth, e.is_a?(MiniTest::Assertion) ? e : ProxyError.new(e)] super end |