ruby-changes:10456
From: akr <ko1@a...>
Date: Tue, 3 Feb 2009 15:37:12 +0900 (JST)
Subject: [ruby-changes:10456] Ruby:r22006 (trunk): add a test.
akr 2009-02-03 15:37:06 +0900 (Tue, 03 Feb 2009) New Revision: 22006 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=22006 Log: add a test. Modified files: trunk/test/socket/test_socket.rb Index: test/socket/test_socket.rb =================================================================== --- test/socket/test_socket.rb (revision 22005) +++ test/socket/test_socket.rb (revision 22006) @@ -143,6 +143,32 @@ } } end + + def test_accept_loop + Dir.mktmpdir {|tmpdir| + tcp_servers = [] + clients = [] + accepted = [] + begin + tcp_servers = Socket.tcp_server_sockets(0) + unix_server = Socket.unix_server_socket("#{tmpdir}/sock") + tcp_servers.each {|s| + clients << s.local_address.connect + } + clients << unix_server.local_address.connect + Socket.accept_loop(tcp_servers, unix_server) {|s| + accepted << s + break if clients.length == accepted.length + } + assert_equal(clients.length, accepted.length) + ensure + tcp_servers.each {|s| s.close if !s.closed? } + unix_server.close if !unix_server.closed? + clients.each {|s| s.close if !s.closed? } + accepted.each {|s| s.close if !s.closed? } + end + } + end end end if defined?(Socket) -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/