diff --git a/test/irb/test_history.rb b/test/irb/test_history.rb index 0b3620fe325c8a87c214f2cab158babfe55326c6..f9193e553ab3d40a7a38a969c1625c9ccf99c9a1 100644 --- a/test/irb/test_history.rb +++ b/test/irb/test_history.rb @@ -116,14 +116,14 @@ def launch_irb_with_irbrc_and_irb_history(irbrc, irb_history) end with_temp_stdio do |stdin, stdout| + yield(stdin, stdout) + stdin.close + stdout.flush replace_stdio(stdin.path, stdout.path) do - yield(stdin, stdout) - stdin.close system('ruby', '-Ilib', '-Itest', '-W0', '-rirb', '-e', 'IRB.start(__FILE__)') - stdout.flush - result = stdout.read - stdout.close end + result = stdout.read + stdout.close end open(IRB.rc_file("_history"), "r") do |f| result_history = f.read