From: Kristján Valur Jónsson Date: Fri, 6 Apr 2012 14:37:45 +0000 (+0000) Subject: Set a time threshold in test_asyncore.capture_server so that tests don't X-Git-Tag: v3.3.0a3~294^2~5^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b2e58185e5ca329b16177ad2095b35adaaafdd91;p=python Set a time threshold in test_asyncore.capture_server so that tests don't deadlock if the main thread fails before sending all the data. --- diff --git a/Lib/test/test_asyncore.py b/Lib/test/test_asyncore.py index 1123c251eb..42a25255ae 100644 --- a/Lib/test/test_asyncore.py +++ b/Lib/test/test_asyncore.py @@ -74,15 +74,16 @@ def capture_server(evt, buf, serv): pass else: n = 200 - while n > 0: - r, w, e = select.select([conn], [], []) + start = time.time() + while n > 0 and time.time() - start < 3.0: + r, w, e = select.select([conn], [], [], 0.1) if r: + n -= 1 data = conn.recv(10) # keep everything except for the newline terminator buf.write(data.replace(b'\n', b'')) if b'\n' in data: break - n -= 1 time.sleep(0.01) conn.close()