From 3c18883251bfd5eb5e5016bfaef5dcaa53e9d7f7 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Fri, 20 Jun 2025 18:26:41 +0900 Subject: [PATCH 1/2] Merge blocks for the same condition --- test/io/console/test_io_console.rb | 2 -- 1 file changed, 2 deletions(-) diff --git a/test/io/console/test_io_console.rb b/test/io/console/test_io_console.rb index 519184c..deeedf0 100644 --- a/test/io/console/test_io_console.rb +++ b/test/io/console/test_io_console.rb @@ -542,9 +542,7 @@ def test_ttyname File.open(ttyname) {|f| assert_predicate(f, :tty?)} end end -end -defined?(IO.console) and TestIO_Console.class_eval do case when Process.respond_to?(:daemon) noctty = [EnvUtil.rubybin, "-e", "Process.daemon(true)"] From f0646b2b6ae35d0cba0fec2b2cf24e02a3f068e3 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Fri, 20 Jun 2025 18:28:08 +0900 Subject: [PATCH 2/2] Ignore `^C` at interrupt It's something we don't expect and might be coming from somewhere else. --- test/io/console/test_io_console.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/test/io/console/test_io_console.rb b/test/io/console/test_io_console.rb index deeedf0..c769e09 100644 --- a/test/io/console/test_io_console.rb +++ b/test/io/console/test_io_console.rb @@ -367,6 +367,7 @@ def assert_ctrl(expect, cc, r, w) w.print cc w.flush result = EnvUtil.timeout(3) {r.gets} + result = yield result if defined?(yield) assert_equal(expect, result.chomp) end @@ -404,7 +405,7 @@ def test_intr if cc = ctrl["intr"] assert_ctrl("#{cc.ord}", cc, r, w) assert_ctrl("#{cc.ord}", cc, r, w) - assert_ctrl("Interrupt", cc, r, w) unless /linux/ =~ RUBY_PLATFORM + assert_ctrl("Interrupt", cc, r, w) {|res| res.sub("^C", "")} unless /linux/ =~ RUBY_PLATFORM end if cc = ctrl["dsusp"] assert_ctrl("#{cc.ord}", cc, r, w)