]> granicus.if.org Git - python/commitdiff
testSendAll(): loop until all data is read; this was necessary at
authorGuido van Rossum <guido@python.org>
Thu, 8 Aug 2002 20:28:34 +0000 (20:28 +0000)
committerGuido van Rossum <guido@python.org>
Thu, 8 Aug 2002 20:28:34 +0000 (20:28 +0000)
least on OS/2 (see note on SF patch 555085 by A I MacIntyre) but
looks like the test *could* fail on any other platform too -- there's
no guarantee that recv() reads all data.

Lib/test/test_socket.py

index 69113fdebb7cc845b1972d548c4392bac4405ccc..3583d41b09804622ac23e58d4db1409c84fe4f5a 100644 (file)
@@ -378,13 +378,13 @@ class BasicTCPTest(SocketConnectedTest):
 
     def testSendAll(self):
         # Testing sendall() with a 2048 byte string over TCP
+        msg = ''
         while 1:
             read = self.cli_conn.recv(1024)
             if not read:
                 break
-            self.assert_(len(read) == 1024, "Error performing sendall.")
-            read = filter(lambda x: x == 'f', read)
-            self.assert_(len(read) == 1024, "Error performing sendall.")
+            msg += read
+        self.assertEqual(msg, 'f' * 2048)
 
     def _testSendAll(self):
         big_chunk = 'f' * 2048