aboutsummaryrefslogtreecommitdiffstats
path: root/test/ruby/test_signal.rb
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-08-09 13:12:54 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-08-09 13:12:54 +0000
commitacff965a5feeae3bdb3b48346c040c59e3c933d9 (patch)
tree04627d11790cd8ab8a824a73f148f8202633b18e /test/ruby/test_signal.rb
parentd1a4390eedb54094a883993dc11b2355df9a9a31 (diff)
downloadruby-acff965a5feeae3bdb3b48346c040c59e3c933d9.tar.gz
* test/ruby/test_signal.rb (TestSignal#test_exit_action): use spawn
instead of fork. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby/test_signal.rb')
-rw-r--r--test/ruby/test_signal.rb8
1 files changed, 5 insertions, 3 deletions
diff --git a/test/ruby/test_signal.rb b/test/ruby/test_signal.rb
index 5d9d3cd691..0098ccc539 100644
--- a/test/ruby/test_signal.rb
+++ b/test/ruby/test_signal.rb
@@ -1,5 +1,6 @@
require 'test/unit'
require 'timeout'
+require_relative 'envutil'
class TestSignal < Test::Unit::TestCase
def have_fork?
@@ -40,13 +41,14 @@ class TestSignal < Test::Unit::TestCase
begin
r, w = IO.pipe
r0, w0 = IO.pipe
- pid = Process.fork {
+ pid = Process.spawn(EnvUtil.rubybin, '-e', <<-'End', 3=>w, 4=>r0)
+ w = IO.new(3, "w")
+ r0 = IO.new(4, "r")
Signal.trap(:USR1, "EXIT")
- w0.close
w.syswrite("a")
Thread.start { sleep(2) }
r0.sysread(4096)
- }
+ End
r.sysread(1)
sleep 0.1
assert_nothing_raised("[ruby-dev:26128]") {