Issue #8576: Remove use of find_unused_port() in test_smtplib and

test_multiprocessing.  Patch by Paul Moore.
This commit is contained in:
Antoine Pitrou 2010-04-30 23:08:48 +00:00
parent 6d5e579cc5
commit 54f9f83e5c
3 changed files with 14 additions and 7 deletions

View File

@ -1262,9 +1262,9 @@ class _TestManagerRestart(BaseTestCase):
def test_rapid_restart(self): def test_rapid_restart(self):
authkey = os.urandom(32) authkey = os.urandom(32)
port = test_support.find_unused_port()
manager = QueueManager( manager = QueueManager(
address=('localhost', port), authkey=authkey, serializer=SERIALIZER) address=('localhost', 0), authkey=authkey, serializer=SERIALIZER)
addr = manager.get_server().address
manager.start() manager.start()
p = self.Process(target=self._putter, args=(manager.address, authkey)) p = self.Process(target=self._putter, args=(manager.address, authkey))
@ -1274,7 +1274,7 @@ class _TestManagerRestart(BaseTestCase):
del queue del queue
manager.shutdown() manager.shutdown()
manager = QueueManager( manager = QueueManager(
address=('localhost', port), authkey=authkey, serializer=SERIALIZER) address=addr, authkey=authkey, serializer=SERIALIZER)
manager.start() manager.start()
manager.shutdown() manager.shutdown()

View File

@ -155,8 +155,10 @@ class DebuggingServerTests(unittest.TestCase):
self._threads = test_support.threading_setup() self._threads = test_support.threading_setup()
self.serv_evt = threading.Event() self.serv_evt = threading.Event()
self.client_evt = threading.Event() self.client_evt = threading.Event()
self.port = test_support.find_unused_port() # Pick a random unused port by passing 0 for the port number
self.serv = smtpd.DebuggingServer((HOST, self.port), ('nowhere', -1)) self.serv = smtpd.DebuggingServer((HOST, 0), ('nowhere', -1))
# Keep a note of what port was assigned
self.port = self.serv.socket.getsockname()[1]
serv_args = (self.serv, self.serv_evt, self.client_evt) serv_args = (self.serv, self.serv_evt, self.client_evt)
self.thread = threading.Thread(target=debugging_server, args=serv_args) self.thread = threading.Thread(target=debugging_server, args=serv_args)
self.thread.start() self.thread.start()
@ -392,8 +394,10 @@ class SMTPSimTests(unittest.TestCase):
self._threads = test_support.threading_setup() self._threads = test_support.threading_setup()
self.serv_evt = threading.Event() self.serv_evt = threading.Event()
self.client_evt = threading.Event() self.client_evt = threading.Event()
self.port = test_support.find_unused_port() # Pick a random unused port by passing 0 for the port number
self.serv = SimSMTPServer((HOST, self.port), ('nowhere', -1)) self.serv = SimSMTPServer((HOST, 0), ('nowhere', -1))
# Keep a note of what port was assigned
self.port = self.serv.socket.getsockname()[1]
serv_args = (self.serv, self.serv_evt, self.client_evt) serv_args = (self.serv, self.serv_evt, self.client_evt)
self.thread = threading.Thread(target=debugging_server, args=serv_args) self.thread = threading.Thread(target=debugging_server, args=serv_args)
self.thread.start() self.thread.start()

View File

@ -134,6 +134,9 @@ Extension Modules
Tests Tests
----- -----
- Issue #8576: Remove use of find_unused_port() in test_smtplib and
test_multiprocessing. Patch by Paul Moore.
- Issue #7449: Fix many tests to support Python compiled without thread - Issue #7449: Fix many tests to support Python compiled without thread
support. Patches written by Jerry Seutter. support. Patches written by Jerry Seutter.