[Python-checkins] r75849 - python/trunk/Lib/test/test_smtplib.py

antoine.pitrou python-checkins at python.org
Tue Oct 27 20:47:30 CET 2009


Author: antoine.pitrou
Date: Tue Oct 27 20:47:30 2009
New Revision: 75849

Log:
Suppress transient refleaks in test_smtplib.



Modified:
   python/trunk/Lib/test/test_smtplib.py

Modified: python/trunk/Lib/test/test_smtplib.py
==============================================================================
--- python/trunk/Lib/test/test_smtplib.py	(original)
+++ python/trunk/Lib/test/test_smtplib.py	Tue Oct 27 20:47:30 2009
@@ -39,17 +39,21 @@
 class GeneralTests(TestCase):
 
     def setUp(self):
+        self._threads = test_support.threading_setup()
         self.evt = threading.Event()
         self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
         self.sock.settimeout(15)
         self.port = test_support.bind_port(self.sock)
         servargs = (self.evt, "220 Hola mundo\n", self.sock)
-        threading.Thread(target=server, args=servargs).start()
+        self.thread = threading.Thread(target=server, args=servargs)
+        self.thread.start()
         self.evt.wait()
         self.evt.clear()
 
     def tearDown(self):
         self.evt.wait()
+        self.thread.join()
+        test_support.threading_cleanup(*self._threads)
 
     def testBasic1(self):
         # connects
@@ -142,12 +146,14 @@
         self.output = StringIO.StringIO()
         sys.stdout = self.output
 
+        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))
         serv_args = (self.serv, self.serv_evt, self.client_evt)
-        threading.Thread(target=debugging_server, args=serv_args).start()
+        self.thread = threading.Thread(target=debugging_server, args=serv_args)
+        self.thread.start()
 
         # wait until server thread has assigned a port number
         self.serv_evt.wait()
@@ -158,6 +164,8 @@
         self.client_evt.set()
         # wait for the server thread to terminate
         self.serv_evt.wait()
+        self.thread.join()
+        test_support.threading_cleanup(*self._threads)
         # restore sys.stdout
         sys.stdout = self.old_stdout
 
@@ -253,17 +261,21 @@
         self.output = StringIO.StringIO()
         sys.stdout = self.output
 
+        self._threads = test_support.threading_setup()
         self.evt = threading.Event()
         self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
         self.sock.settimeout(15)
         self.port = test_support.bind_port(self.sock)
         servargs = (self.evt, "199 no hello for you!\n", self.sock)
-        threading.Thread(target=server, args=servargs).start()
+        self.thread = threading.Thread(target=server, args=servargs)
+        self.thread.start()
         self.evt.wait()
         self.evt.clear()
 
     def tearDown(self):
         self.evt.wait()
+        self.thread.join()
+        test_support.threading_cleanup(*self._threads)
         sys.stdout = self.old_stdout
 
     def testFailingHELO(self):
@@ -369,12 +381,14 @@
 class SMTPSimTests(TestCase):
 
     def setUp(self):
+        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))
         serv_args = (self.serv, self.serv_evt, self.client_evt)
-        threading.Thread(target=debugging_server, args=serv_args).start()
+        self.thread = threading.Thread(target=debugging_server, args=serv_args)
+        self.thread.start()
 
         # wait until server thread has assigned a port number
         self.serv_evt.wait()
@@ -385,6 +399,8 @@
         self.client_evt.set()
         # wait for the server thread to terminate
         self.serv_evt.wait()
+        self.thread.join()
+        test_support.threading_cleanup(*self._threads)
 
     def testBasic(self):
         # smoke test


More information about the Python-checkins mailing list