summaryrefslogtreecommitdiff
path: root/test/readline
diff options
context:
space:
mode:
authorshugo <shugo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-12-17 15:18:03 +0000
committershugo <shugo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-12-17 15:18:03 +0000
commit7836e8ade3444b7c43259138bff5db4bc40986e2 (patch)
tree6d9219f816462e23a5bc62e0958461b8a28da478 /test/readline
parent397b34ad86f5e0377126dc2e21bc04c8266250cc (diff)
* test/readline/test_readline.rb: fix for BSD. Thanks, GOTOU Yuuzou.
fixed: [ruby-dev:25218] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/readline')
-rw-r--r--test/readline/test_readline.rb28
1 files changed, 16 insertions, 12 deletions
diff --git a/test/readline/test_readline.rb b/test/readline/test_readline.rb
index e7093f7bd3..b2c83b4021 100644
--- a/test/readline/test_readline.rb
+++ b/test/readline/test_readline.rb
@@ -55,18 +55,22 @@ class TestReadline < Test::Unit::TestCase
private
def replace_stdio(stdin_path, stdout_path)
- orig_stdin = STDIN.dup
- orig_stdout = STDOUT.dup
- STDIN.reopen(stdin_path, "r")
- STDOUT.reopen(stdout_path, "w")
- begin
- yield
- ensure
- STDIN.reopen(orig_stdin)
- STDOUT.reopen(orig_stdout)
- orig_stdin.close
- orig_stdout.close
- end
+ open(stdin_path, "r"){|stdin|
+ open(stdout_path, "w"){|stdout|
+ orig_stdin = STDIN.dup
+ orig_stdout = STDOUT.dup
+ STDIN.reopen(stdin)
+ STDOUT.reopen(stdout)
+ begin
+ yield
+ ensure
+ STDIN.reopen(orig_stdin)
+ STDOUT.reopen(orig_stdout)
+ orig_stdin.close
+ orig_stdout.close
+ end
+ }
+ }
end
end