about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2011-11-14 09:53:26 +0000
committerEric Wong <normalperson@yhbt.net>2011-11-14 09:53:26 +0000
commitfb6a9f43728f46efee4e3f4aa6c689d260ae7387 (patch)
tree55af728356bb6bb41855a2ed2171a741178642cf
parent41d9b886e9ae1bea35753d6f5de958154809330a (diff)
downloadmogilefs-client-fb6a9f43728f46efee4e3f4aa6c689d260ae7387.tar.gz
One can never guarantee this with TCP.
-rw-r--r--test/test_mogilefs.rb16
1 files changed, 12 insertions, 4 deletions
diff --git a/test/test_mogilefs.rb b/test/test_mogilefs.rb
index 7b231fa..3f9d8a4 100644
--- a/test/test_mogilefs.rb
+++ b/test/test_mogilefs.rb
@@ -328,16 +328,24 @@ class TestMogileFS__MogileFS < TestMogileFS
 
     t1 = TempServer.new(Proc.new do |serv, accept|
       client, _ = serv.accept
-      client.sync = true
-      received1.syswrite(client.recv(4096, 0))
+      seen = ""
+      while seen !~ /\r\n\r\ndata/
+        buf = client.readpartial(4096)
+        seen << buf
+        received1.syswrite(buf)
+      end
       client.send("HTTP/1.0 500 Internal Server Error\r\n\r\n", 0)
       client.close
     end)
 
     t2 = TempServer.new(Proc.new do |serv, accept|
       client, _ = serv.accept
-      client.sync = true
-      received2.syswrite(client.recv(4096, 0))
+      seen = ""
+      while seen !~ /\r\n\r\ndata/
+        buf = client.readpartial(4096)
+        seen << buf
+        received2.syswrite(buf)
+      end
       client.send("HTTP/1.0 200 OK\r\n\r\n", 0)
       client.close
     end)