aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/ruby/test_io.rb17
1 files changed, 5 insertions, 12 deletions
diff --git a/test/ruby/test_io.rb b/test/ruby/test_io.rb
index 6c62695d6c..9e6b14acee 100644
--- a/test/ruby/test_io.rb
+++ b/test/ruby/test_io.rb
@@ -2261,25 +2261,18 @@ End
end
def test_cross_thread_close_stdio
- with_pipe do |r,w|
- pid = fork do
+ assert_separately([], <<-'end;')
+ IO.pipe do |r,w|
$stdin.reopen(r)
r.close
read_thread = Thread.new do
- begin
- $stdin.read(1)
- rescue => e
- e
- end
+ $stdin.read(1)
end
sleep(0.1) until read_thread.stop?
$stdin.close
- read_thread.join
- exit(IOError === read_thread.value)
+ assert_raise(IOError) {read_thread.join}
end
- assert Process.waitpid2(pid)[1].success?
- end
- rescue NotImplementedError
+ end;
end
def test_open_mode