From 3fe20509c29c40305d0362adbc787edfc29e96d4 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Wed, 8 Jul 2015 16:48:41 +0200 Subject: Filter queries by available resources, and filter resources by resource-types --- tests/clientapitest.cpp | 50 ++++++++++++++++++++++++++----------------------- 1 file changed, 27 insertions(+), 23 deletions(-) (limited to 'tests') diff --git a/tests/clientapitest.cpp b/tests/clientapitest.cpp index 5eb16da..9b8c27e 100644 --- a/tests/clientapitest.cpp +++ b/tests/clientapitest.cpp @@ -5,6 +5,7 @@ #include "clientapi.h" #include "facade.h" #include "synclistresult.h" +#include "resourceconfig.h" class RevisionNotifier : public QObject { @@ -99,21 +100,29 @@ class ClientAPITest : public QObject Q_OBJECT private Q_SLOTS: + static std::shared_ptr registerDummyFacade() + { + auto facade = std::make_shared(); + Akonadi2::FacadeFactory::instance().registerFacade("dummyresource", + [facade](const QByteArray &instanceIdentifier) { + return facade; + } + ); + return facade; + } + void initTestCase() { Akonadi2::FacadeFactory::instance().resetFactory(); + ResourceConfig::clear(); } + void testLoad() { - auto facade = std::make_shared(); + auto facade = registerDummyFacade(); facade->results << QSharedPointer::create("resource", "id", 0, QSharedPointer()); - - Akonadi2::FacadeFactory::instance().registerFacade("dummyresource", - [facade](const QByteArray &instanceIdentifier) { - return facade; - } - ); + ResourceConfig::addResource("dummyresource.instance1", "dummyresource"); Akonadi2::Query query; query.resources << "dummyresource.instance1"; @@ -126,14 +135,9 @@ private Q_SLOTS: void testLiveQuery() { - auto facade = std::make_shared(); + auto facade = registerDummyFacade(); facade->results << QSharedPointer::create("resource", "id", 0, QSharedPointer()); - - Akonadi2::FacadeFactory::instance().registerFacade("dummyresource", - [facade](const QByteArray &instanceIdentifier){ - return facade; - } - ); + ResourceConfig::addResource("dummyresource.instance1", "dummyresource"); Akonadi2::Query query; query.resources << "dummyresource.instance1"; @@ -152,14 +156,9 @@ private Q_SLOTS: void testQueryLifetime() { - auto facade = std::make_shared(); + auto facade = registerDummyFacade(); facade->results << QSharedPointer::create("resource", "id", 0, QSharedPointer()); - - Akonadi2::FacadeFactory::instance().registerFacade("dummyresource", - [facade](const QByteArray &instanceIdentifier){ - return facade; - } - ); + ResourceConfig::addResource("dummyresource.instance1", "dummyresource"); Akonadi2::Query query; query.resources << "dummyresource.instance1"; @@ -176,9 +175,12 @@ private Q_SLOTS: void resourceManagement() { - Akonadi2::FacadeFactory::registerStaticFacades(); + ResourceConfig::clear(); + Akonadi2::FacadeFactory::instance().registerStaticFacades(); + ResourceConfig::addResource("resourceconfig", "resourceconfig"); + Akonadi2::ApplicationDomain::AkonadiResource res; - res.setProperty("identifier", "identifier1"); + res.setProperty("identifier", "dummyresource.identifier1"); res.setProperty("type", "dummyresource"); Akonadi2::Store::create(res, "resourceconfig"); @@ -186,6 +188,7 @@ private Q_SLOTS: { Akonadi2::Query query; query.resources << "resourceconfig"; + query.propertyFilter.insert("type", "dummyresource"); async::SyncListResult result(Akonadi2::Store::load(query)); result.exec(); QCOMPARE(result.size(), 1); @@ -195,6 +198,7 @@ private Q_SLOTS: { Akonadi2::Query query; query.resources << "resourceconfig"; + query.propertyFilter.insert("type", "dummyresource"); async::SyncListResult result(Akonadi2::Store::load(query)); result.exec(); QCOMPARE(result.size(), 0); -- cgit v1.2.3