summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/tests
diff options
context:
space:
mode:
authorKenneth Anthony Giusti <kgiusti@apache.org>2011-08-05 20:47:10 +0000
committerKenneth Anthony Giusti <kgiusti@apache.org>2011-08-05 20:47:10 +0000
commit45012dc9764465561ee1edbc4d3de4fac03c5b54 (patch)
tree0efa83203b11cff3dd8145919a7b5c2efa2cdf79 /qpid/cpp/src/tests
parent3489d568087c433e75e7b6fd7c0f5eae96983d40 (diff)
downloadqpid-python-45012dc9764465561ee1edbc4d3de4fac03c5b54.tar.gz
QPID-3346: refactor queue interface to support consumer-based message selection.
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/qpid-3346@1154376 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src/tests')
-rw-r--r--qpid/cpp/src/tests/QueueTest.cpp21
1 files changed, 13 insertions, 8 deletions
diff --git a/qpid/cpp/src/tests/QueueTest.cpp b/qpid/cpp/src/tests/QueueTest.cpp
index 6fdc4c69ad..1f1eb16af5 100644
--- a/qpid/cpp/src/tests/QueueTest.cpp
+++ b/qpid/cpp/src/tests/QueueTest.cpp
@@ -58,7 +58,7 @@ public:
intrusive_ptr<Message> last;
bool received;
- TestConsumer(bool acquire = true):Consumer(acquire), received(false) {};
+ TestConsumer(bool acquire = true):Consumer("test", acquire), received(false) {};
virtual bool deliver(QueuedMessage& msg){
last = msg.payload;
@@ -324,14 +324,18 @@ QPID_AUTO_TEST_CASE(testSearch){
queue->deliver(msg3);
SequenceNumber seq(2);
- QueuedMessage qm = queue->find(seq);
+ QueuedMessage qm;
+ TestConsumer::shared_ptr c1(new TestConsumer());
+
+ BOOST_CHECK(queue->find(seq, qm));
BOOST_CHECK_EQUAL(seq.getValue(), qm.position.getValue());
- queue->acquire(qm);
+ queue->acquire(qm, c1);
BOOST_CHECK_EQUAL(queue->getMessageCount(), 2u);
SequenceNumber seq1(3);
- QueuedMessage qm1 = queue->find(seq1);
+ QueuedMessage qm1;
+ BOOST_CHECK(queue->find(seq1, qm1));
BOOST_CHECK_EQUAL(seq1.getValue(), qm1.position.getValue());
}
@@ -551,12 +555,13 @@ QPID_AUTO_TEST_CASE(testLVQAcquire){
QueuedMessage qmsg2(queue.get(), msg2, ++sequence);
framing::SequenceNumber sequence1(10);
QueuedMessage qmsg3(queue.get(), 0, sequence1);
+ TestConsumer::shared_ptr dummy(new TestConsumer());
- BOOST_CHECK(!queue->acquire(qmsg));
- BOOST_CHECK(queue->acquire(qmsg2));
+ BOOST_CHECK(!queue->acquire(qmsg, dummy));
+ BOOST_CHECK(queue->acquire(qmsg2, dummy));
// Acquire the massage again to test failure case.
- BOOST_CHECK(!queue->acquire(qmsg2));
- BOOST_CHECK(!queue->acquire(qmsg3));
+ BOOST_CHECK(!queue->acquire(qmsg2, dummy));
+ BOOST_CHECK(!queue->acquire(qmsg3, dummy));
BOOST_CHECK_EQUAL(queue->getMessageCount(), 2u);