add tests for non-delayed declaration
existing tests have been immediately declaring queues and exchanges, and not testing non-delayed declaration (queue/exchange is OPEN when declaration occurs). these new tests cover this case
This commit is contained in:
parent
bb2e9881ea
commit
9fbd0a852f
|
|
@ -48,17 +48,27 @@ void tst_QAMQPExchange::cleanup()
|
|||
void tst_QAMQPExchange::standardTypes_data()
|
||||
{
|
||||
QTest::addColumn<Exchange::ExchangeType>("type");
|
||||
QTest::newRow("direct") << Exchange::Direct;
|
||||
QTest::newRow("fanout") << Exchange::FanOut;
|
||||
QTest::newRow("topic") << Exchange::Topic;
|
||||
QTest::newRow("headers") << Exchange::Headers;
|
||||
QTest::addColumn<bool>("delayedDeclaration");
|
||||
|
||||
QTest::newRow("direct") << Exchange::Direct << false;
|
||||
QTest::newRow("direct-delayed") << Exchange::Direct << true;
|
||||
QTest::newRow("fanout") << Exchange::FanOut << false;
|
||||
QTest::newRow("fanout-delayed") << Exchange::FanOut << true;
|
||||
QTest::newRow("topic") << Exchange::Topic << false;
|
||||
QTest::newRow("topic-delayed") << Exchange::Topic << true;
|
||||
QTest::newRow("headers") << Exchange::Headers << false;
|
||||
QTest::newRow("headers-delayed") << Exchange::Headers << true;
|
||||
}
|
||||
|
||||
void tst_QAMQPExchange::standardTypes()
|
||||
{
|
||||
QFETCH(Exchange::ExchangeType, type);
|
||||
QFETCH(bool, delayedDeclaration);
|
||||
|
||||
Exchange *exchange = client->createExchange("test");
|
||||
if (!delayedDeclaration)
|
||||
QVERIFY(waitForSignal(exchange, SIGNAL(opened())));
|
||||
|
||||
exchange->declare(type);
|
||||
QVERIFY(waitForSignal(exchange, SIGNAL(declared())));
|
||||
exchange->remove(Exchange::roForce);
|
||||
|
|
@ -76,7 +86,6 @@ void tst_QAMQPExchange::invalidStandardDeclaration_data()
|
|||
QTest::newRow("amq.headers") << "amq.headers" << Exchange::Headers << QAMQP::PreconditionFailedError;
|
||||
QTest::newRow("amq.match") << "amq.match" << Exchange::Headers << QAMQP::PreconditionFailedError;
|
||||
QTest::newRow("amq.topic") << "amq.topic" << Exchange::Topic << QAMQP::PreconditionFailedError;
|
||||
|
||||
QTest::newRow("amq.reserved") << "amq.reserved" << Exchange::Direct << QAMQP::AccessRefusedError;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -108,21 +108,31 @@ void tst_QAMQPQueue::defaultExchange()
|
|||
void tst_QAMQPQueue::standardExchanges_data()
|
||||
{
|
||||
QTest::addColumn<QString>("exchange");
|
||||
QTest::newRow("amq.direct") << "amq.direct";
|
||||
QTest::newRow("amq.fanout") << "amq.fanout";
|
||||
QTest::newRow("amq.headers") << "amq.headers";
|
||||
QTest::newRow("amq.match") << "amq.match";
|
||||
QTest::newRow("amq.topic") << "amq.topic";
|
||||
QTest::addColumn<bool>("delayedDeclaration");
|
||||
|
||||
QTest::newRow("amq.direct") << "amq.direct" << false;
|
||||
QTest::newRow("amq.direct-delayed") << "amq.direct" << true;
|
||||
QTest::newRow("amq.fanout") << "amq.fanout" << false;
|
||||
QTest::newRow("amq.fanout-delayed") << "amq.fanout" << true;
|
||||
QTest::newRow("amq.headers") << "amq.headers" << false;
|
||||
QTest::newRow("amq.headers-delayed") << "amq.headers" << true;
|
||||
QTest::newRow("amq.match") << "amq.match" << false;
|
||||
QTest::newRow("amq.match-delayed") << "amq.match" << true;
|
||||
QTest::newRow("amq.topic") << "amq.topic" << false;
|
||||
QTest::newRow("amq.topic-delayed") << "amq.topic" << true;
|
||||
}
|
||||
|
||||
void tst_QAMQPQueue::standardExchanges()
|
||||
{
|
||||
QFETCH(QString, exchange);
|
||||
QFETCH(bool, delayedDeclaration);
|
||||
|
||||
QString queueName = QString("test-%1").arg(exchange);
|
||||
QString routingKey = QString("testRoutingKey-%1").arg(exchange);
|
||||
|
||||
Queue *queue = client->createQueue(queueName);
|
||||
if (!delayedDeclaration)
|
||||
QVERIFY(waitForSignal(queue, SIGNAL(opened())));
|
||||
declareQueueAndVerifyConsuming(queue);
|
||||
|
||||
queue->bind(exchange, routingKey);
|
||||
|
|
|
|||
Loading…
Reference in New Issue