ruby-changes:17280
From: shyouhei <ko1@a...>
Date: Fri, 17 Sep 2010 16:52:30 +0900 (JST)
Subject: [ruby-changes:17280] Ruby:r29281 (trunk): * test/io/console/test_io_console.rb (TestIO_Console::helper):
shyouhei 2010-09-17 16:52:21 +0900 (Fri, 17 Sep 2010) New Revision: 29281 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=29281 Log: * test/io/console/test_io_console.rb (TestIO_Console::helper): PTY.open is not guaranteed to work. On my machine opening a pty is prohibited via process control group. On those cases exceptions shall occur, and that doesn't mean our fault. Skip those tests on such situations. Modified files: trunk/ChangeLog trunk/test/io/console/test_io_console.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 29280) +++ ChangeLog (revision 29281) @@ -1,3 +1,11 @@ +Fri Sep 17 16:48:49 2010 URABE Shyouhei <shyouhei@r...> + + * test/io/console/test_io_console.rb (TestIO_Console::helper): + PTY.open is not guaranteed to work. On my machine opening a + pty is prohibited via process control group. On those cases + exceptions shall occur, and that doesn't mean our fault. + Skip those tests on such situations. + Fri Sep 17 08:30:27 2010 Nobuyoshi Nakada <nobu@r...> * lib/tracer.rb: count only non-internal libraries in stack trace, Index: test/io/console/test_io_console.rb =================================================================== --- test/io/console/test_io_console.rb (revision 29280) +++ test/io/console/test_io_console.rb (revision 29281) @@ -4,7 +4,7 @@ class TestIO_Console < Test::Unit::TestCase def test_raw - PTY.open {|m, s| + helper {|m, s| s.print "abc\n" assert_equal("abc\r\n", m.gets) s.raw { @@ -17,7 +17,7 @@ end def test_echo - PTY.open {|m, s| + helper {|m, s| assert(s.echo?) m.print "a" assert_equal("a", m.readpartial(10)) @@ -25,7 +25,7 @@ end def test_noecho - PTY.open {|m, s| + helper {|m, s| s.noecho { assert(!s.echo?) m.print "a" @@ -37,7 +37,7 @@ end def test_noecho2 - PTY.open {|m, s| + helper {|m, s| assert(s.echo?) m.print "a\n" sleep 0.1 @@ -63,7 +63,7 @@ end def test_setecho - PTY.open {|m, s| + helper {|m, s| assert(s.echo?) s.echo = false m.print "a" @@ -75,7 +75,7 @@ end def test_setecho2 - PTY.open {|m, s| + helper {|m, s| assert(s.echo?) m.print "a\n" sleep 0.1 @@ -101,7 +101,7 @@ end def test_iflush - PTY.open {|m, s| + helper {|m, s| m.print "a" s.iflush m.print "b\n" @@ -110,7 +110,7 @@ end def test_oflush - PTY.open {|m, s| + helper {|m, s| s.print "a" s.oflush # oflush may be issued after "a" is already sent. s.print "b" @@ -119,7 +119,7 @@ end def test_ioflush - PTY.open {|m, s| + helper {|m, s| m.print "a" s.ioflush m.print "b\n" @@ -128,7 +128,7 @@ end def test_ioflush2 - PTY.open {|m, s| + helper {|m, s| s.print "a" s.ioflush # ioflush may be issued after "a" is already sent. s.print "b" @@ -137,11 +137,23 @@ end def test_winsize - PTY.open {|m, s| + helper {|m, s| begin assert_equal([0, 0], s.winsize) rescue Errno::EINVAL # OpenSolaris 2009.06 TIOCGWINSZ causes Errno::EINVAL before TIOCSWINSZ. end } end + + private + def helper + m, s = PTY.open + rescue RuntimeError + skip $! + else + yield m, s + ensure + m.close if m + s.close if s + end end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/