ruby-changes:9230
From: akr <ko1@a...>
Date: Tue, 16 Dec 2008 00:36:33 +0900 (JST)
Subject: [ruby-changes:9230] Ruby:r20767 (trunk): add tests.
akr 2008-12-16 00:36:26 +0900 (Tue, 16 Dec 2008) New Revision: 20767 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=20767 Log: add tests. Modified files: trunk/test/test_pty.rb Index: test/test_pty.rb =================================================================== --- test/test_pty.rb (revision 20766) +++ test/test_pty.rb (revision 20767) @@ -38,5 +38,65 @@ Process.wait(pid) } end + + def test_open_without_block + ret = PTY.open + assert_kind_of(Array, ret) + assert_equal(2, ret.length) + assert_equal(IO, ret[0].class) + assert_equal(File, ret[1].class) + master, slave = ret + assert(slave.tty?) + assert(File.chardev?(slave.path)) + ensure + if ret + ret[0].close + ret[1].close + end + end + + def test_open_with_block + r = nil + x = Object.new + y = PTY.open {|ret| + r = ret; + assert_kind_of(Array, ret) + assert_equal(2, ret.length) + assert_equal(IO, ret[0].class) + assert_equal(File, ret[1].class) + master, slave = ret + assert(slave.tty?) + assert(File.chardev?(slave.path)) + x + } + assert(r[0].closed?) + assert(r[1].closed?) + assert_equal(y, x) + end + + def test_close_in_block + PTY.open {|master, slave| + slave.close + master.close + assert(slave.closed?) + assert(master.closed?) + } + assert_nothing_raised { + PTY.open {|master, slave| + slave.close + master.close + } + } + end + + def test_open + PTY.open {|master, slave| + slave.puts "foo" + assert_equal("foo", master.gets.chomp) + master.puts "bar" + assert_equal("bar", slave.gets.chomp) + } + end + end if defined? PTY -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/