summaryrefslogtreecommitdiff
path: root/python/tests_0-10/management.py
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2009-09-01 15:22:48 +0000
committerGordon Sim <gsim@apache.org>2009-09-01 15:22:48 +0000
commitcecee5383faa391c22e520d65a65d29bc8469205 (patch)
treeea40958a3a785f2e04c6c92781fd0412441697f3 /python/tests_0-10/management.py
parent2e80b8e3f11e53e757866cb828d1ab885cd27da7 (diff)
downloadqpid-python-cecee5383faa391c22e520d65a65d29bc8469205.tar.gz
QPID-2078: Ensure sessions are cleaned up when their connection is closed by management.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@810094 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'python/tests_0-10/management.py')
-rw-r--r--python/tests_0-10/management.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/python/tests_0-10/management.py b/python/tests_0-10/management.py
index 51c2a687cb..53573f309e 100644
--- a/python/tests_0-10/management.py
+++ b/python/tests_0-10/management.py
@@ -295,3 +295,25 @@ class ManagementTest (TestBase010):
sleep(1)
self.assertEqual(handler.check(), "pass")
+ def test_connection_close(self):
+ """
+ Test management method for closing connection
+ """
+ self.startQmf()
+ conn = self.connect()
+ session = conn.session("my-named-session")
+
+ #using qmf find named session and close the corresponding connection:
+ qmf_ssn_object = self.qmf.getObjects(_class="session", name="my-named-session")[0]
+ qmf_ssn_object._connectionRef_.close()
+
+ #check that connection is closed
+ try:
+ conn.session("another-session")
+ self.fail("Expected failure from closed connection")
+ except: None
+
+ #make sure that the named session has been closed and the name can be re-used
+ conn = self.connect()
+ session = conn.session("my-named-session")
+ session.queue_declare(queue="whatever", exclusive=True, auto_delete=True)