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

ruby-changes:10682

From: akr <ko1@a...>
Date: Thu, 12 Feb 2009 00:29:41 +0900 (JST)
Subject: [ruby-changes:10682] Ruby:r22245 (trunk): test updated.

akr	2009-02-12 00:29:35 +0900 (Thu, 12 Feb 2009)

  New Revision: 22245

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=22245

  Log:
    test updated.

  Modified files:
    trunk/test/socket/test_socket.rb

Index: test/socket/test_socket.rb
===================================================================
--- test/socket/test_socket.rb	(revision 22244)
+++ test/socket/test_socket.rb	(revision 22245)
@@ -229,34 +229,38 @@
     begin
       ip_addrs = Socket.ip_address_list
     rescue NotImplementedError
+      return
     end
 
-    sockets = Socket.udp_server_sockets(0)
-    port = sockets.first.local_address.ip_port
+    Socket.udp_server_sockets(0) {|sockets|
+      begin
+        port = sockets.first.local_address.ip_port
 
-    th = Thread.new {
-      Socket.udp_server_loop_on(sockets) {|msg, msg_src|
-        break if msg == "exit"
-        rmsg = Marshal.dump([msg, msg_src.remote_address, msg_src.local_address])
-        msg_src.reply rmsg
-      }
-    }
+        th = Thread.new {
+          Socket.udp_server_loop_on(sockets) {|msg, msg_src|
+            break if msg == "exit"
+            rmsg = Marshal.dump([msg, msg_src.remote_address, msg_src.local_address])
+            msg_src.reply rmsg
+          }
+        }
 
-    ip_addrs.each {|ai|
-      Addrinfo.udp(ai.ip_address, port).connect {|s|
-        msg1 = "<<<#{ai.inspect}>>>"
-        s.sendmsg msg1
-        msg2, addr = s.recvmsg
-        msg2, remote_address, local_address = Marshal.load(msg2)
-        assert_equal(msg1, msg2)
-        assert_equal(ai.ip_address, addr.ip_address)
-      }
+        ip_addrs.each {|ai|
+          Addrinfo.udp(ai.ip_address, port).connect {|s|
+            msg1 = "<<<#{ai.inspect}>>>"
+            s.sendmsg msg1
+            msg2, addr = s.recvmsg
+            msg2, remote_address, local_address = Marshal.load(msg2)
+            assert_equal(msg1, msg2)
+            assert_equal(ai.ip_address, addr.ip_address)
+          }
+        }
+      ensure
+        if th
+          Addrinfo.udp("127.0.0.1", port).connect {|s| s.sendmsg "exit" }
+          th.join
+        end
+      end
     }
-  ensure
-    if th
-      Addrinfo.udp("127.0.0.1", port).connect {|s| s.sendmsg "exit" }
-      th.join
-    end
   end
 
 end if defined?(Socket)

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

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