diff options
Diffstat (limited to 'test/ruby/test_io.rb')
-rw-r--r-- | test/ruby/test_io.rb | 17 |
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 |