mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* eval.c (ruby_cleanup): call finalizers and exit procs before
terminating threads. * eval.c (ruby_cleanup): preserve ruby_errinfo before ruby_finalize_0(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
8af34b7b33
commit
06d9340f2e
9 changed files with 119 additions and 408 deletions
|
@ -1,12 +1,17 @@
|
|||
require 'test_drb'
|
||||
require "#{File.dirname(File.expand_path(__FILE__))}/drbtest"
|
||||
require 'drb/unix'
|
||||
|
||||
class TestService
|
||||
@@scripts = %w(ut_drb_drbunix.rb ut_array_drbunix.rb)
|
||||
class DRbUNIXService < DRbService
|
||||
%w(ut_drb_drbunix.rb ut_array_drbunix.rb).each do |nm|
|
||||
DRb::ExtServManager.command[nm] = "#{@@ruby} #{@@dir}/#{nm}"
|
||||
end
|
||||
@server = DRb::DRbServer.new(ARGV.shift || 'drbunix:', @@manager, {})
|
||||
end
|
||||
|
||||
class DRbXCoreTest < DRbCoreTest
|
||||
class TestDRbUNIXCore < Test::Unit::TestCase
|
||||
include DRbCore
|
||||
def setup
|
||||
@ext = $manager.service('ut_drb_drbunix.rb')
|
||||
@ext = DRbUNIXService.manager.service('ut_drb_drbunix.rb')
|
||||
@there = @ext.front
|
||||
end
|
||||
|
||||
|
@ -21,26 +26,20 @@ class DRbXCoreTest < DRbCoreTest
|
|||
|
||||
def test_06_timeout
|
||||
ten = Onecky.new(3)
|
||||
assert_exception(TimeoutError) do
|
||||
assert_raises(TimeoutError) do
|
||||
@there.do_timeout(ten)
|
||||
end
|
||||
assert_exception(TimeoutError) do
|
||||
assert_raises(TimeoutError) do
|
||||
@there.do_timeout(ten)
|
||||
end
|
||||
sleep 3
|
||||
end
|
||||
end
|
||||
|
||||
class DRbXAryTest < DRbAryTest
|
||||
class TestDRbUNIXAry < Test::Unit::TestCase
|
||||
include DRbAry
|
||||
def setup
|
||||
@ext = $manager.service('ut_array_drbunix.rb')
|
||||
@ext = DRbUNIXService.manager.service('ut_array_drbunix.rb')
|
||||
@there = @ext.front
|
||||
end
|
||||
end
|
||||
|
||||
if __FILE__ == $0
|
||||
$testservice = TestService.new(ARGV.shift || 'drbunix:')
|
||||
$manager = $testservice.manager
|
||||
RUNIT::CUI::TestRunner.run(DRbXCoreTest.suite)
|
||||
RUNIT::CUI::TestRunner.run(DRbXAryTest.suite)
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue