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.
........
This commit is contained in:
Antoine Pitrou 2010-10-29 18:16:31 +00:00
parent c6f4024e03
commit e0e34bbb64
1 changed files with 11 additions and 9 deletions

View File

@ -130,17 +130,19 @@ class TimeoutTestCase(unittest.TestCase):
def testRecvTimeout(self): def testRecvTimeout(self):
# Test recv() timeout # Test recv() timeout
_timeout = 0.02 _timeout = 0.02
self.sock.connect(self.addr_remote)
self.sock.settimeout(_timeout)
_t1 = time.time() with support.transient_internet(self.addr_remote[0]):
self.assertRaises(socket.error, self.sock.recv, 1024) self.sock.connect(self.addr_remote)
_t2 = time.time() self.sock.settimeout(_timeout)
_delta = abs(_t1 - _t2) _t1 = time.time()
self.assertTrue(_delta < _timeout + self.fuzz, self.assertRaises(socket.timeout, self.sock.recv, 1024)
"timeout (%g) is %g seconds more than expected (%g)" _t2 = time.time()
%(_delta, self.fuzz, _timeout))
_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): def testAcceptTimeout(self):
# Test accept() timeout # Test accept() timeout