[Python-checkins] r85932 - in python/branches/release31-maint: Lib/test/test_timeout.py

antoine.pitrou python-checkins at python.org
Fri Oct 29 20:16:31 CEST 2010


Author: antoine.pitrou
Date: Fri Oct 29 20:16:31 2010
New Revision: 85932

Log:
Merged revisions 85931 via svnmerge from 
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r85931 | antoine.pitrou | 2010-10-29 20:15:33 +0200 (ven., 29 oct. 2010) | 5 lines
  
  Issue #7547: fix transient failures due to network glitches in test_timeout.
  Patch by Sandro Tosi.
........


Modified:
   python/branches/release31-maint/   (props changed)
   python/branches/release31-maint/Lib/test/test_timeout.py

Modified: python/branches/release31-maint/Lib/test/test_timeout.py
==============================================================================
--- python/branches/release31-maint/Lib/test/test_timeout.py	(original)
+++ python/branches/release31-maint/Lib/test/test_timeout.py	Fri Oct 29 20:16:31 2010
@@ -130,17 +130,19 @@
     def testRecvTimeout(self):
         # Test recv() timeout
         _timeout = 0.02
-        self.sock.connect(self.addr_remote)
-        self.sock.settimeout(_timeout)
-
-        _t1 = time.time()
-        self.assertRaises(socket.error, self.sock.recv, 1024)
-        _t2 = time.time()
 
-        _delta = abs(_t1 - _t2)
-        self.assertTrue(_delta < _timeout + self.fuzz,
-                     "timeout (%g) is %g seconds more than expected (%g)"
-                     %(_delta, self.fuzz, _timeout))
+        with support.transient_internet(self.addr_remote[0]):
+            self.sock.connect(self.addr_remote)
+            self.sock.settimeout(_timeout)
+
+            _t1 = time.time()
+            self.assertRaises(socket.timeout, self.sock.recv, 1024)
+            _t2 = time.time()
+
+            _delta = abs(_t1 - _t2)
+            self.assertTrue(_delta < _timeout + self.fuzz,
+                         "timeout (%g) is %g seconds more than expected (%g)"
+                         %(_delta, self.fuzz, _timeout))
 
     def testAcceptTimeout(self):
         # Test accept() timeout


More information about the Python-checkins mailing list