Suppress transient refleaks in test_asyncore

This commit is contained in:
Antoine Pitrou 2009-10-27 18:36:47 +00:00
parent abc9f70381
commit f829d1f551

View file

@ -319,16 +319,18 @@ class DispatcherWithSendTests(unittest.TestCase):
def tearDown(self):
asyncore.close_all()
@test_support.reap_threads
def test_send(self):
self.evt = threading.Event()
self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.sock.settimeout(3)
self.port = test_support.bind_port(self.sock)
evt = threading.Event()
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(3)
port = test_support.bind_port(sock)
cap = StringIO()
args = (self.evt, cap, self.sock)
threading.Thread(target=capture_server, args=args).start()
args = (evt, cap, sock)
t = threading.Thread(target=capture_server, args=args)
t.start()
try:
# wait a little longer for the server to initialize (it sometimes
# refuses connections on slow machines without this wait)
time.sleep(0.2)
@ -336,7 +338,7 @@ class DispatcherWithSendTests(unittest.TestCase):
data = "Suppose there isn't a 16-ton weight?"
d = dispatcherwithsend_noread()
d.create_socket(socket.AF_INET, socket.SOCK_STREAM)
d.connect((HOST, self.port))
d.connect((HOST, port))
# give time for socket to connect
time.sleep(0.1)
@ -350,9 +352,11 @@ class DispatcherWithSendTests(unittest.TestCase):
asyncore.poll()
n -= 1
self.evt.wait()
evt.wait()
self.assertEqual(cap.getvalue(), data*2)
finally:
t.join()
class DispatcherWithSendTests_UsePoll(DispatcherWithSendTests):