summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorKim van der Riet <kpvdr@apache.org>2012-08-03 12:13:32 +0000
committerKim van der Riet <kpvdr@apache.org>2012-08-03 12:13:32 +0000
commitd43d1912b376322e27fdcda551a73f9ff5487972 (patch)
treece493e10baa95f44be8beb5778ce51783463196d /tests
parent04877fec0c6346edec67072d7f2d247740cf2af5 (diff)
downloadqpid-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-xtests/setup.py2
-rw-r--r--tests/src/py/qpid_tests/broker_0_10/__init__.py1
-rw-r--r--tests/src/py/qpid_tests/broker_0_10/management.py13
-rw-r--r--tests/src/py/qpid_tests/broker_0_10/qmf_events.py83
-rw-r--r--tests/src/py/qpid_tests/broker_0_10/query.py2
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)