From d485a23d5e73578b68bb6e57f2360e317796dafb Mon Sep 17 00:00:00 2001 From: "Rafael H. Schloming" Date: Fri, 9 Apr 2010 11:39:38 +0000 Subject: cleanup waiter pipes on error git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@932362 13f79535-47bb-0310-9956-ffa450edef68 --- python/qpid/tests/messaging/endpoints.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'python/qpid/tests') diff --git a/python/qpid/tests/messaging/endpoints.py b/python/qpid/tests/messaging/endpoints.py index 26c7ff25f4..320f88aa3b 100644 --- a/python/qpid/tests/messaging/endpoints.py +++ b/python/qpid/tests/messaging/endpoints.py @@ -67,6 +67,26 @@ class SetupTests(Base): while fds: os.close(fds.pop()) + def testOpenFailResourceLeaks(self): + fds = self.use_fds() + try: + for i in range(32): + if fds: os.close(fds.pop()) + for i in xrange(64): + conn = Connection("localhost:0", **self.connection_options()) + # XXX: we need to force a waiter to be created for this test + # to work + conn._lock.acquire() + conn._wait(lambda: False, timeout=0.001) + conn._lock.release() + try: + conn.open() + except ConnectError, e: + pass + finally: + while fds: + os.close(fds.pop()) + def testReconnect(self): options = self.connection_options() import socket -- cgit v1.2.1