summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2010-04-30 23:08:48 (GMT)
committerAntoine Pitrou <solipsis@pitrou.net>2010-04-30 23:08:48 (GMT)
commit54f9f83e5cd417267b29a38f3364716523e69b28 (patch)
tree8dad7d5d01197c4f05b7f1ba8c15f493433addd6
parent6d5e579cc5e349fe7e8185a821434d718db2c6ea (diff)
downloadcpython-54f9f83e5cd417267b29a38f3364716523e69b28.zip
cpython-54f9f83e5cd417267b29a38f3364716523e69b28.tar.gz
cpython-54f9f83e5cd417267b29a38f3364716523e69b28.tar.bz2
Issue #8576: Remove use of find_unused_port() in test_smtplib and
test_multiprocessing. Patch by Paul Moore.
-rw-r--r--Lib/test/test_multiprocessing.py6
-rw-r--r--Lib/test/test_smtplib.py12
-rw-r--r--Misc/NEWS3
3 files changed, 14 insertions, 7 deletions
diff --git a/Lib/test/test_multiprocessing.py b/Lib/test/test_multiprocessing.py
index 03629d1..59b3357 100644
--- a/Lib/test/test_multiprocessing.py
+++ b/Lib/test/test_multiprocessing.py
@@ -1262,9 +1262,9 @@ class _TestManagerRestart(BaseTestCase):
def test_rapid_restart(self):
authkey = os.urandom(32)
- port = test_support.find_unused_port()
manager = QueueManager(
- address=('localhost', port), authkey=authkey, serializer=SERIALIZER)
+ address=('localhost', 0), authkey=authkey, serializer=SERIALIZER)
+ addr = manager.get_server().address
manager.start()
p = self.Process(target=self._putter, args=(manager.address, authkey))
@@ -1274,7 +1274,7 @@ class _TestManagerRestart(BaseTestCase):
del queue
manager.shutdown()
manager = QueueManager(
- address=('localhost', port), authkey=authkey, serializer=SERIALIZER)
+ address=addr, authkey=authkey, serializer=SERIALIZER)
manager.start()
manager.shutdown()
diff --git a/Lib/test/test_smtplib.py b/Lib/test/test_smtplib.py
index 977a152..b74fa40 100644
--- a/Lib/test/test_smtplib.py
+++ b/Lib/test/test_smtplib.py
@@ -155,8 +155,10 @@ class DebuggingServerTests(unittest.TestCase):
self._threads = test_support.threading_setup()
self.serv_evt = threading.Event()
self.client_evt = threading.Event()
- self.port = test_support.find_unused_port()
- self.serv = smtpd.DebuggingServer((HOST, self.port), ('nowhere', -1))
+ # Pick a random unused port by passing 0 for the port number
+ 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)
self.thread = threading.Thread(target=debugging_server, args=serv_args)
self.thread.start()
@@ -392,8 +394,10 @@ class SMTPSimTests(unittest.TestCase):
self._threads = test_support.threading_setup()
self.serv_evt = threading.Event()
self.client_evt = threading.Event()
- self.port = test_support.find_unused_port()
- self.serv = SimSMTPServer((HOST, self.port), ('nowhere', -1))
+ # Pick a random unused port by passing 0 for the port number
+ 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)
self.thread = threading.Thread(target=debugging_server, args=serv_args)
self.thread.start()
diff --git a/Misc/NEWS b/Misc/NEWS
index b42665a..355654b 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -134,6 +134,9 @@ Extension Modules
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
support. Patches written by Jerry Seutter.