From db8f328bde01d24bf9271638f8295fc70c68cdd4 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Fri, 8 Jul 2016 14:30:37 +0200 Subject: Account status --- tests/accountstest.cpp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'tests/accountstest.cpp') diff --git a/tests/accountstest.cpp b/tests/accountstest.cpp index 8d0f2e6..4be8bd6 100644 --- a/tests/accountstest.cpp +++ b/tests/accountstest.cpp @@ -8,6 +8,7 @@ #include #include #include +#include "testutils.h" class AccountsTest : public QObject { @@ -115,6 +116,35 @@ private slots: QTRY_COMPARE(model->rowCount(QModelIndex()), 2); } + void testLoadAccountStatus() + { + using namespace Sink; + using namespace Sink::ApplicationDomain; + + auto account = ApplicationDomainType::createEntity(); + account.setAccountType("dummy"); + account.setName("name"); + VERIFYEXEC(Store::create(account)); + + auto res = Sink::ApplicationDomain::DummyResource::create(account.identifier()); + VERIFYEXEC(Sink::Store::create(res)); + { + Sink::Query query; + query.liveQuery = true; + query.request(); + + auto model = Sink::Store::loadModel(query); + QTRY_COMPARE(model->rowCount(QModelIndex()), 1); + auto account = model->data(model->index(0, 0, QModelIndex()), Sink::Store::DomainObjectRole).value(); + QCOMPARE(account->getStatus(), static_cast(Sink::ApplicationDomain::OfflineStatus)); + + //Synchronize to connect + VERIFYEXEC(Sink::Store::synchronize(Query::ResourceFilter(res))); + + QTRY_COMPARE_WITH_TIMEOUT(model->data(model->index(0, 0, QModelIndex()), Sink::Store::DomainObjectRole).value()->getStatus(), static_cast(Sink::ApplicationDomain::ConnectedStatus), 1000); + } + } + }; QTEST_GUILESS_MAIN(AccountsTest) -- cgit v1.2.3