From 20bf85c5cfa51ee5da0b890cfd72346373ff7c8c Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Fri, 16 Jan 2015 16:11:20 +0100 Subject: Messagequeuetest --- tests/messagequeuetest.cpp | 45 +++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 41 insertions(+), 4 deletions(-) (limited to 'tests') diff --git a/tests/messagequeuetest.cpp b/tests/messagequeuetest.cpp index 2ea9f0c..c43b192 100644 --- a/tests/messagequeuetest.cpp +++ b/tests/messagequeuetest.cpp @@ -21,6 +21,21 @@ private Q_SLOTS: { } + void cleanup() + { + Akonadi2::Storage store(Akonadi2::Store::storageLocation(), "org.kde.dummy.testqueue", Akonadi2::Storage::ReadWrite); + store.removeFromDisk(); + } + + void testEmpty() + { + MessageQueue queue(Akonadi2::Store::storageLocation(), "org.kde.dummy.testqueue"); + QVERIFY(queue.isEmpty()); + QByteArray value("value"); + queue.enqueue(value.data(), value.size()); + QVERIFY(!queue.isEmpty()); + } + void testQueue() { QQueue values; @@ -34,14 +49,36 @@ private Q_SLOTS: while (!queue.isEmpty()) { const auto expected = values.dequeue(); + bool gotValue = false; + bool gotError = false; queue.dequeue([&](void *ptr, int size, std::function callback) { - QCOMPARE(QByteArray(static_cast(ptr), size), expected); + if (QByteArray(static_cast(ptr), size) == expected) { + gotValue = true; + } callback(true); - }, [](const MessageQueue::Error &error) { - + }, + [&](const MessageQueue::Error &error) { + gotError = true; }); + QVERIFY(gotValue); + QVERIFY(!gotError); } - Q_ASSERT(values.isEmpty()); + QVERIFY(values.isEmpty()); + } + + void testDequeueEmpty() + { + MessageQueue queue(Akonadi2::Store::storageLocation(), "org.kde.dummy.testqueue"); + bool gotValue = false; + bool gotError = false; + queue.dequeue([&](void *ptr, int size, std::function callback) { + gotValue = true; + }, + [&](const MessageQueue::Error &error) { + gotError = true; + }); + QVERIFY(!gotValue); + QVERIFY(gotError); } }; -- cgit v1.2.3