From 32a6f2ad3b66431c157e00ba5b1fb40c05e3c407 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Wed, 8 Jun 2016 17:43:24 +0200 Subject: Defined resource capabilities. --- common/domain/applicationdomaintype.cpp | 6 +++--- common/domain/applicationdomaintype.h | 10 ++++++++++ tests/mailsynctest.cpp | 10 +++++----- tests/mailtest.cpp | 2 +- 4 files changed, 19 insertions(+), 9 deletions(-) diff --git a/common/domain/applicationdomaintype.cpp b/common/domain/applicationdomaintype.cpp index a57a50b..d9b0c92 100644 --- a/common/domain/applicationdomaintype.cpp +++ b/common/domain/applicationdomaintype.cpp @@ -251,7 +251,7 @@ namespace MaildirResource { auto &&resource = ApplicationDomainType::createEntity(); resource.setProperty("type", "org.kde.maildir"); resource.setProperty("account", account); - resource.setProperty("capabilities", QVariant::fromValue(QByteArrayList() << "storage" << "drafts" << "-folder.rename")); + resource.setProperty("capabilities", QVariant::fromValue(QByteArrayList() << ResourceCapabilities::Mail::storage << ResourceCapabilities::Mail::drafts << "-folder.rename")); return resource; } } @@ -262,7 +262,7 @@ namespace MailtransportResource { auto &&resource = ApplicationDomainType::createEntity(); resource.setProperty("type", "org.kde.mailtransport"); resource.setProperty("account", account); - resource.setProperty("capabilities", QVariant::fromValue(QByteArrayList() << "transport")); + resource.setProperty("capabilities", QVariant::fromValue(QByteArrayList() << ResourceCapabilities::Mail::transport)); return resource; } } @@ -273,7 +273,7 @@ namespace ImapResource { auto &&resource = ApplicationDomainType::createEntity(); resource.setProperty("type", "org.kde.imap"); resource.setProperty("account", account); - resource.setProperty("capabilities", QVariant::fromValue(QByteArrayList() << "storage" << "folder.hierarchy")); + resource.setProperty("capabilities", QVariant::fromValue(QByteArrayList() << ResourceCapabilities::Mail::storage << ResourceCapabilities::Mail::drafts << ResourceCapabilities::Mail::folderhierarchy)); return resource; } } diff --git a/common/domain/applicationdomaintype.h b/common/domain/applicationdomaintype.h index b011eb5..72ac480 100644 --- a/common/domain/applicationdomaintype.h +++ b/common/domain/applicationdomaintype.h @@ -252,6 +252,16 @@ namespace ImapResource { SinkResource SINK_EXPORT create(const QByteArray &account); }; +namespace ResourceCapabilities { +namespace Mail { + static constexpr const char *storage = "mail.storage"; + static constexpr const char *drafts = "mail.drafts"; + static constexpr const char *trash = "mail.trash"; + static constexpr const char *transport = "mail.transport"; + static constexpr const char *folderhierarchy = "mail.folderhierarchy"; +}; +}; + /** * All types need to be registered here an MUST return a different name. * diff --git a/tests/mailsynctest.cpp b/tests/mailsynctest.cpp index 4f0b9bb..6c91381 100644 --- a/tests/mailsynctest.cpp +++ b/tests/mailsynctest.cpp @@ -95,7 +95,7 @@ void MailSyncTest::testListFolders() if (names.contains("maildir1")) { names.removeAll("maildir1"); } - if (mCapabilities.contains("drafts")) { + if (mCapabilities.contains(ResourceCapabilities::Mail::drafts)) { QVERIFY(names.contains("drafts")); names.removeAll("drafts"); } @@ -155,7 +155,7 @@ void MailSyncTest::testListRemovedFolder() void MailSyncTest::testListFolderHierarchy() { - if (!mCapabilities.contains("folder.hierarchy")) { + if (!mCapabilities.contains(ResourceCapabilities::Mail::folderhierarchy)) { QSKIP("Missing capability folder.hierarchy"); } Sink::Query query; @@ -182,7 +182,7 @@ void MailSyncTest::testListFolderHierarchy() if (names.contains("maildir1")) { names.removeAll("maildir1"); } - if (mCapabilities.contains("drafts")) { + if (mCapabilities.contains(ResourceCapabilities::Mail::drafts)) { QVERIFY(names.contains("drafts")); names.removeAll("drafts"); } @@ -194,7 +194,7 @@ void MailSyncTest::testListFolderHierarchy() void MailSyncTest::testListNewSubFolder() { - if (!mCapabilities.contains("folder.hierarchy")) { + if (!mCapabilities.contains(ResourceCapabilities::Mail::folderhierarchy)) { QSKIP("Missing capability folder.hierarchy"); } Sink::Query query; @@ -219,7 +219,7 @@ void MailSyncTest::testListNewSubFolder() void MailSyncTest::testListRemovedSubFolder() { - if (!mCapabilities.contains("folder.hierarchy")) { + if (!mCapabilities.contains(ResourceCapabilities::Mail::folderhierarchy)) { QSKIP("Missing capability folder.hierarchy"); } Sink::Query query; diff --git a/tests/mailtest.cpp b/tests/mailtest.cpp index d45187e..70d60bb 100644 --- a/tests/mailtest.cpp +++ b/tests/mailtest.cpp @@ -270,7 +270,7 @@ void MailTest::testMarkMailAsRead() void MailTest::testCreateDraft() { - if (!mCapabilities.contains("drafts")) { + if (!mCapabilities.contains(ResourceCapabilities::Mail::drafts)) { QSKIP("Resource doesn't have the drafts capability"); } -- cgit v1.2.3