summaryrefslogtreecommitdiff
path: root/test/readline
diff options
context:
space:
mode:
Diffstat (limited to 'test/readline')
-rw-r--r--test/readline/test_readline.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/readline/test_readline.rb b/test/readline/test_readline.rb
index 4949aec922..c783b56bfc 100644
--- a/test/readline/test_readline.rb
+++ b/test/readline/test_readline.rb
@@ -3,6 +3,7 @@ require_relative "helper"
require "test/unit"
require "tempfile"
require "timeout"
+require "open3"
module BasetestReadline
INPUTRC = "INPUTRC"
@@ -809,6 +810,19 @@ module BasetestReadline
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)