ruby-changes:67532
From: aycabta <ko1@a...>
Date: Wed, 1 Sep 2021 17:29:20 +0900 (JST)
Subject: [ruby-changes:67532] 67eaa222cf (master): Add a test for Readline.readline without tty
https://git.ruby-lang.org/ruby.git/commit/?id=67eaa222cf From 67eaa222cf37dd95ba0be8da3972126183868810 Mon Sep 17 00:00:00 2001 From: aycabta <aycabta@g...> Date: Wed, 1 Sep 2021 16:20:04 +0900 Subject: Add a test for Readline.readline without tty --- test/readline/test_readline.rb | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/test/readline/test_readline.rb b/test/readline/test_readline.rb index 4949aec..c783b56 100644 --- a/test/readline/test_readline.rb +++ b/test/readline/test_readline.rb @@ -3,6 +3,7 @@ require_relative "helper" https://github.com/ruby/ruby/blob/trunk/test/readline/test_readline.rb#L3 require "test/unit" require "tempfile" require "timeout" +require "open3" module BasetestReadline INPUTRC = "INPUTRC" @@ -809,6 +810,19 @@ module BasetestReadline https://github.com/ruby/ruby/blob/trunk/test/readline/test_readline.rb#L810 Readline.completer_quote_characters = saved_completer_quote_characters if saved_completer_quote_characters end + def test_without_tty + loader = nil + if defined?(TestReadline) && self.class == TestReadline + loader = "use_ext_readline" + elsif defined?(TestRelineAsReadline) && self.class == TestRelineAsReadline + loader = "use_lib_reline" + end + if loader + res, exit_status = Open3.capture2e("ruby -I#{__dir__} -Ilib -rhelper -e '#{loader}; Readline.readline(%{y or n?})'", stdin_data: "y\n") + assert exit_status.success?, "It should work fine without tty, but it failed.\nError output:\n#{res}" + end + end + private def replace_stdio(stdin_path, stdout_path) -- cgit v1.1 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/