add an auto test for synchronous get
This commit is contained in:
parent
824d8d56ca
commit
92384ce7cb
|
|
@ -35,6 +35,7 @@ private Q_SLOTS:
|
||||||
void invalidCancelBecauseNotConsuming();
|
void invalidCancelBecauseNotConsuming();
|
||||||
void invalidCancelBecauseInvalidConsumerTag();
|
void invalidCancelBecauseInvalidConsumerTag();
|
||||||
void getEmpty();
|
void getEmpty();
|
||||||
|
void get();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void declareQueueAndVerifyConsuming(Queue *queue);
|
void declareQueueAndVerifyConsuming(Queue *queue);
|
||||||
|
|
@ -348,5 +349,38 @@ void tst_QAMQPQueue::getEmpty()
|
||||||
QVERIFY(waitForSignal(queue, SIGNAL(empty())));
|
QVERIFY(waitForSignal(queue, SIGNAL(empty())));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void tst_QAMQPQueue::get()
|
||||||
|
{
|
||||||
|
Queue *queue = client->createQueue("test-get");
|
||||||
|
queue->declare();
|
||||||
|
QVERIFY(waitForSignal(queue, SIGNAL(declared())));
|
||||||
|
|
||||||
|
const int messageCount = 50;
|
||||||
|
Exchange *defaultExchange = client->createExchange();
|
||||||
|
for (int i = 0; i < messageCount; ++i) {
|
||||||
|
QString expected = QString("message %1").arg(i);
|
||||||
|
defaultExchange->publish(expected, "test-get");
|
||||||
|
}
|
||||||
|
|
||||||
|
// wait for messages to be delivered
|
||||||
|
QTest::qWait(25);
|
||||||
|
|
||||||
|
for (int i = 0; i < messageCount; ++i) {
|
||||||
|
QString expected = QString("message %1").arg(i);
|
||||||
|
queue->get(false);
|
||||||
|
QVERIFY(waitForSignal(queue, SIGNAL(messageReceived())));
|
||||||
|
Message message = queue->dequeue();
|
||||||
|
QCOMPARE(message.payload(), expected.toUtf8());
|
||||||
|
queue->ack(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
queue->get(false);
|
||||||
|
QVERIFY(waitForSignal(queue, SIGNAL(empty())));
|
||||||
|
|
||||||
|
// clean up queue
|
||||||
|
queue->remove(Queue::roForce);
|
||||||
|
QVERIFY(waitForSignal(queue, SIGNAL(removed())));
|
||||||
|
}
|
||||||
|
|
||||||
QTEST_MAIN(tst_QAMQPQueue)
|
QTEST_MAIN(tst_QAMQPQueue)
|
||||||
#include "tst_qamqpqueue.moc"
|
#include "tst_qamqpqueue.moc"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue