diff options
author | Ted Ross <tross@apache.org> | 2010-11-23 17:56:35 +0000 |
---|---|---|
committer | Ted Ross <tross@apache.org> | 2010-11-23 17:56:35 +0000 |
commit | 241cf9f1e7741a3a19a0bb215024aada96effc33 (patch) | |
tree | 1ce226979b3a71d2746b4ec95ddb3d608be3d272 /tests | |
parent | f5ec4560c171f669b1fec143a1090d92f7cade8b (diff) | |
download | qpid-python-241cf9f1e7741a3a19a0bb215024aada96effc33.tar.gz |
QPID-2957 - Management methods on the broker don't work on newly created objects
A test and a fix are included.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1038231 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'tests')
-rw-r--r-- | tests/src/py/qpid_tests/broker_0_10/management.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/src/py/qpid_tests/broker_0_10/management.py b/tests/src/py/qpid_tests/broker_0_10/management.py index 677645fa2c..1e579debf4 100644 --- a/tests/src/py/qpid_tests/broker_0_10/management.py +++ b/tests/src/py/qpid_tests/broker_0_10/management.py @@ -23,6 +23,7 @@ from qpid.management import managementChannel, managementClient from threading import Condition from time import sleep import qmf.console +import qpid.messaging class ManagementTest (TestBase010): """ @@ -387,6 +388,30 @@ class ManagementTest (TestBase010): session = conn.session("my-named-session") session.queue_declare(queue="whatever", exclusive=True, auto_delete=True) + def test_immediate_method(self): + url = "%s://%s:%d" % (self.broker.scheme or "amqp", self.broker.host, self.broker.port) + conn = qpid.messaging.Connection(url) + conn.open() + sess = conn.session() + replyTo = "qmf.default.direct/reply_immediate_method_test;{node:{type:topic}}" + agent_sender = sess.sender("qmf.default.direct/broker") + agent_receiver = sess.receiver(replyTo) + queue_create = sess.sender("test-queue-imm-method;{create:always,delete:always,node:{type:queue,durable:False,x-declare:{auto-delete:True}}}") + + method_request = {'_method_name':'reroute','_object_id':{'_object_name':'org.apache.qpid.broker:queue:test-queue-imm-method'}} + method_request['_arguments'] = {'request':0, 'useAltExchange':False, 'exchange':'amq.fanout'} + + reroute_call = qpid.messaging.Message(method_request) + reroute_call.properties['qmf.opcode'] = '_method_request' + reroute_call.properties['x-amqp-0-10.app-id'] = 'qmf2' + reroute_call.reply_to = replyTo + + agent_sender.send(reroute_call) + result = agent_receiver.fetch(3) + self.assertEqual(result.properties['qmf.opcode'], '_method_response') + + conn.close() + def test_binding_count_on_queue(self): self.startQmf() conn = self.connect() |