From 4eb94786232aee936cd6371824764705c9359538 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Wed, 17 Jun 2015 00:57:24 +0200 Subject: An almost generic query implementation. With equality filter on arbitrary properties as a bonus. --- tests/dummyresourcetest.cpp | 51 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) (limited to 'tests') diff --git a/tests/dummyresourcetest.cpp b/tests/dummyresourcetest.cpp index fe04d99..4c27b10 100644 --- a/tests/dummyresourcetest.cpp +++ b/tests/dummyresourcetest.cpp @@ -124,6 +124,57 @@ private Q_SLOTS: QCOMPARE(value->getProperty("uid").toByteArray(), QByteArray("testuid")); } + void testWriteToFacadeAndQueryByUid2() + { + Akonadi2::ApplicationDomain::Event event; + event.setProperty("summary", "summaryValue"); + + event.setProperty("uid", "testuid"); + Akonadi2::Store::create(event, "org.kde.dummy.instance1"); + + event.setProperty("uid", "testuid2"); + Akonadi2::Store::create(event, "org.kde.dummy.instance1"); + + Akonadi2::Query query; + query.resources << "org.kde.dummy.instance1"; + query.syncOnDemand = false; + query.processAll = true; + + query.propertyFilter.insert("uid", "testuid"); + async::SyncListResult result(Akonadi2::Store::load(query)); + result.exec(); + QCOMPARE(result.size(), 1); + auto value = result.first(); + qDebug() << value->getProperty("uid").toByteArray(); + QCOMPARE(value->getProperty("uid").toByteArray(), QByteArray("testuid")); + } + + void testWriteToFacadeAndQueryBySummary() + { + Akonadi2::ApplicationDomain::Event event; + + event.setProperty("uid", "testuid"); + event.setProperty("summary", "summaryValue1"); + Akonadi2::Store::create(event, "org.kde.dummy.instance1"); + + event.setProperty("uid", "testuid2"); + event.setProperty("summary", "summaryValue2"); + Akonadi2::Store::create(event, "org.kde.dummy.instance1"); + + Akonadi2::Query query; + query.resources << "org.kde.dummy.instance1"; + query.syncOnDemand = false; + query.processAll = true; + + query.propertyFilter.insert("summary", "summaryValue2"); + async::SyncListResult result(Akonadi2::Store::load(query)); + result.exec(); + QCOMPARE(result.size(), 1); + auto value = result.first(); + qDebug() << value->getProperty("uid").toByteArray(); + QCOMPARE(value->getProperty("uid").toByteArray(), QByteArray("testuid2")); + } + void testResourceSync() { Akonadi2::Pipeline pipeline("org.kde.dummy.instance1"); -- cgit v1.2.3