diff options
Diffstat (limited to 'test/rubygems/test_require.rb')
-rw-r--r-- | test/rubygems/test_require.rb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/test/rubygems/test_require.rb b/test/rubygems/test_require.rb index 2b6620cc65..d90c3e2744 100644 --- a/test/rubygems/test_require.rb +++ b/test/rubygems/test_require.rb @@ -3,7 +3,9 @@ require 'rubygems/test_case' require 'rubygems' class TestGemRequire < Gem::TestCase + class Latch + def initialize(count = 1) @count = count @lock = Monitor.new @@ -22,6 +24,7 @@ class TestGemRequire < Gem::TestCase @cv.wait_while { @count > 0 } end end + end def setup @@ -565,8 +568,10 @@ class TestGemRequire < Gem::TestCase def test_try_activate_error_unlocks_require_monitor silence_warnings do class << ::Gem + alias old_try_activate try_activate def try_activate(*); raise 'raised from try_activate'; end + end end @@ -577,7 +582,9 @@ class TestGemRequire < Gem::TestCase ensure silence_warnings do class << ::Gem + alias try_activate old_try_activate + end end Kernel::RUBYGEMS_ACTIVATION_MONITOR.exit @@ -733,4 +740,5 @@ class TestGemRequire < Gem::TestCase dash_i_lib_arg end + end |