[前][次][番号順一覧][スレッド一覧]

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/

[前][次][番号順一覧][スレッド一覧]