diff --git a/test/io/console/test_io_console.rb b/test/io/console/test_io_console.rb index 519184c..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) @@ -542,9 +543,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)"]