]> granicus.if.org Git - python/commitdiff
Issue #8576: Remove use of find_unused_port() in test_smtplib and
authorAntoine Pitrou <solipsis@pitrou.net>
Fri, 30 Apr 2010 23:08:48 +0000 (23:08 +0000)
committerAntoine Pitrou <solipsis@pitrou.net>
Fri, 30 Apr 2010 23:08:48 +0000 (23:08 +0000)
test_multiprocessing.  Patch by Paul Moore.

Lib/test/test_multiprocessing.py
Lib/test/test_smtplib.py
Misc/NEWS

index 03629d1b552d37cf36c1ffd27916cf93aa59403b..59b3357eefb7a4eb22a867a6ef1bba9e3296b36e 100644 (file)
@@ -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()
 
index 977a1527b36f218b11e2b57444d6a8b598d2e1b8..b74fa407dd7d09bd0ace3d84712b9e04fa2aeb49 100644 (file)
@@ -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()
index b42665a04249cad600f40a7c6f9184cf2dafed7b..355654b3ef03020c1916ddc09d892e52822c0134 100644 (file)
--- 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.