diff options
author | Kim van der Riet <kpvdr@apache.org> | 2012-08-03 12:13:32 +0000 |
---|---|---|
committer | Kim van der Riet <kpvdr@apache.org> | 2012-08-03 12:13:32 +0000 |
commit | d43d1912b376322e27fdcda551a73f9ff5487972 (patch) | |
tree | ce493e10baa95f44be8beb5778ce51783463196d /tests | |
parent | 04877fec0c6346edec67072d7f2d247740cf2af5 (diff) | |
download | qpid-python-d43d1912b376322e27fdcda551a73f9ff5487972.tar.gz |
QPID-3858: Updated branch - merged from trunk r.1368650
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/asyncstore@1368910 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/setup.py | 2 | ||||
-rw-r--r-- | tests/src/py/qpid_tests/broker_0_10/__init__.py | 1 | ||||
-rw-r--r-- | tests/src/py/qpid_tests/broker_0_10/management.py | 13 | ||||
-rw-r--r-- | tests/src/py/qpid_tests/broker_0_10/qmf_events.py | 83 | ||||
-rw-r--r-- | tests/src/py/qpid_tests/broker_0_10/query.py | 2 |
5 files changed, 98 insertions, 3 deletions
diff --git a/tests/setup.py b/tests/setup.py index 36e7a0531a..8d5345d56e 100755 --- a/tests/setup.py +++ b/tests/setup.py @@ -20,7 +20,7 @@ from distutils.core import setup setup(name="qpid-tests", - version="0.17", + version="0.19", author="Apache Qpid", author_email="dev@qpid.apache.org", packages=["qpid_tests", "qpid_tests.broker_0_10", "qpid_tests.broker_0_9", diff --git a/tests/src/py/qpid_tests/broker_0_10/__init__.py b/tests/src/py/qpid_tests/broker_0_10/__init__.py index 107b34c82b..312dc22645 100644 --- a/tests/src/py/qpid_tests/broker_0_10/__init__.py +++ b/tests/src/py/qpid_tests/broker_0_10/__init__.py @@ -36,3 +36,4 @@ from extensions import * from msg_groups import * from new_api import * from stats import * +from qmf_events import * 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 2dd2291b2e..a1316ea854 100644 --- a/tests/src/py/qpid_tests/broker_0_10/management.py +++ b/tests/src/py/qpid_tests/broker_0_10/management.py @@ -302,9 +302,10 @@ class ManagementTest (TestBase010): twenty = range(1,21) props = session.delivery_properties(routing_key="routing_key") + mp = session.message_properties(application_headers={'x-qpid.trace' : 'A,B,C'}) for count in twenty: body = "Reroute Message %d" % count - msg = Message(props, body) + msg = Message(props, mp, body) session.message_transfer(destination="amq.direct", message=msg) pq = self.qmf.getObjects(_class="queue", name="reroute-queue")[0] @@ -317,6 +318,16 @@ class ManagementTest (TestBase010): self.assertEqual(pq.msgDepth,19) self.assertEqual(aq.msgDepth,1) + "Verify that the trace was cleared on the rerouted message" + 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() + rx = sess.receiver("alt-queue1;{mode:browse}") + rm = rx.fetch(1) + self.assertEqual(rm.properties['x-qpid.trace'], '') + conn.close() + "Reroute top 9 messages from reroute-queue to alt.direct2" result = pq.reroute(9, False, "alt.direct2", {}) self.assertEqual(result.status, 0) diff --git a/tests/src/py/qpid_tests/broker_0_10/qmf_events.py b/tests/src/py/qpid_tests/broker_0_10/qmf_events.py new file mode 100644 index 0000000000..7ab7b0a1ac --- /dev/null +++ b/tests/src/py/qpid_tests/broker_0_10/qmf_events.py @@ -0,0 +1,83 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +from qpid.messaging import * +from qpid.tests.messaging import Base +from qpidtoollibs.broker import EventHelper +import math + +class EventTests (Base): + """ + Test various qmf events + """ + def setup_connection(self): + return Connection.establish(self.broker, **self.connection_options()) + + def setup_session(self): + return self.conn.session() + + def test_queue_declare(self): + helper = EventHelper() + + # subscribe for queue declare events + rcv = self.ssn.receiver(helper.eventAddress("org.apache.qpid.broker", "queueDeclare")) + # create a queue + snd = self.ssn.sender("myq; {create:always, delete:always}") + # ensure we got an event + event = helper.event(rcv.fetch(timeout=1)) + assert event.name, "org_apache_qpid_broker:queueDeclare" + assert event.qName, "myq" + + def test_queue_delete(self): + helper = EventHelper() + + rcv = self.ssn.receiver(helper.eventAddress("org.apache.qpid.broker", "queueDelete")) + snd = self.ssn.sender("myq; {create:always, delete:always}") + snd.close() + + event = helper.event(rcv.fetch(timeout=1)) + assert event.name, "org_apache_qpid_broker:queueDelete" + assert event.qName, "myq" + + def test_queue_autodelete_exclusive(self): + helper = EventHelper() + + rcv = self.ssn.receiver(helper.eventAddress("org.apache.qpid.broker", "queueDelete")) + + #create new session + ssn2 = self.setup_session() + snd = ssn2.sender("myq; {create:always, node:{x-declare:{auto-delete:True, exclusive:True}}}") + ssn2.close() + + event = helper.event(rcv.fetch(timeout=5)) + assert event.name, "org_apache_qpid_broker:queueDelete" + assert event.qName, "myq" + + def test_queue_autodelete_shared(self): + helper = EventHelper() + + rcv = self.ssn.receiver(helper.eventAddress("org.apache.qpid.broker", "queueDelete")) + + rcv2 = self.ssn.receiver("myq; {create:always, node:{x-declare:{auto-delete:True}}}") + rcv2.close() + + event = helper.event(rcv.fetch(timeout=5)) + assert event.name, "org_apache_qpid_broker:queueDelete" + assert event.qName, "myq" + diff --git a/tests/src/py/qpid_tests/broker_0_10/query.py b/tests/src/py/qpid_tests/broker_0_10/query.py index d57e964982..fd741821d5 100644 --- a/tests/src/py/qpid_tests/broker_0_10/query.py +++ b/tests/src/py/qpid_tests/broker_0_10/query.py @@ -26,7 +26,7 @@ class QueryTests(TestBase010): def test_queue_query(self): session = self.session - session.queue_declare(queue="my-queue", exclusive=True) + session.queue_declare(queue="my-queue", exclusive=True, auto_delete=True) result = session.queue_query(queue="my-queue") self.assertEqual("my-queue", result.queue) |