From: Guido van Rossum Date: Thu, 6 Sep 2007 03:57:23 +0000 (+0000) Subject: Use an event variable to wait for the server to be ready, not time.sleep(). X-Git-Tag: v3.0a2~438 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3da4c4bcaba549b27f3f3ba69ad7e58a585d5461;p=thirdparty%2FPython%2Fcpython.git Use an event variable to wait for the server to be ready, not time.sleep(). --- diff --git a/Lib/test/test_ftplib.py b/Lib/test/test_ftplib.py index 9298bf45d665..62aae05fa69d 100644 --- a/Lib/test/test_ftplib.py +++ b/Lib/test/test_ftplib.py @@ -6,12 +6,13 @@ import time from unittest import TestCase from test import test_support -def server(evt): +def server(evt, ready): serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) serv.settimeout(3) serv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) serv.bind(("", 9091)) serv.listen(5) + ready.set() try: conn, addr = serv.accept() except socket.timeout: @@ -28,8 +29,9 @@ class GeneralTests(TestCase): def setUp(self): ftplib.FTP.port = 9091 self.evt = threading.Event() - threading.Thread(target=server, args=(self.evt,)).start() - time.sleep(.1) + ready = threading.Event() + threading.Thread(target=server, args=(self.evt, ready)).start() + ready.wait() def tearDown(self): self.evt.wait()