[前][次][番号順一覧][スレッド一覧]

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/

[前][次][番号順一覧][スレッド一覧]