summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--common/domain/applicationdomaintype.cpp2
-rw-r--r--tests/mailtest.cpp48
2 files changed, 26 insertions, 24 deletions
diff --git a/common/domain/applicationdomaintype.cpp b/common/domain/applicationdomaintype.cpp
index 1e111ec..e219608 100644
--- a/common/domain/applicationdomaintype.cpp
+++ b/common/domain/applicationdomaintype.cpp
@@ -245,7 +245,7 @@ namespace MaildirResource {
245 auto &&resource = ApplicationDomainType::createEntity<SinkResource>(); 245 auto &&resource = ApplicationDomainType::createEntity<SinkResource>();
246 resource.setProperty("type", "org.kde.maildir"); 246 resource.setProperty("type", "org.kde.maildir");
247 resource.setProperty("account", account); 247 resource.setProperty("account", account);
248 resource.setProperty("capabilities", QVariant::fromValue(QByteArrayList() << "storage" << "drafts")); 248 resource.setProperty("capabilities", QVariant::fromValue(QByteArrayList() << "storage" << "drafts" << "-folder.rename"));
249 return resource; 249 return resource;
250 } 250 }
251} 251}
diff --git a/tests/mailtest.cpp b/tests/mailtest.cpp
index 9046180..d45187e 100644
--- a/tests/mailtest.cpp
+++ b/tests/mailtest.cpp
@@ -98,30 +98,32 @@ void MailTest::testCreateModifyDeleteFolder()
98 VERIFYEXEC(ResourceControl::flushReplayQueue(QByteArrayList() << mResourceInstanceIdentifier)); 98 VERIFYEXEC(ResourceControl::flushReplayQueue(QByteArrayList() << mResourceInstanceIdentifier));
99 VERIFYEXEC(ResourceControl::inspect<ApplicationDomain::Folder>(ResourceControl::Inspection::ExistenceInspection(folder, true))); 99 VERIFYEXEC(ResourceControl::inspect<ApplicationDomain::Folder>(ResourceControl::Inspection::ExistenceInspection(folder, true)));
100 100
101 QString name2 = "name2"; 101 if (!mCapabilities.contains("-folder.rename")) {
102 QByteArray icon2 = "icon2"; 102 QString name2 = "name2";
103 folder.setName(name2); 103 QByteArray icon2 = "icon2";
104 folder.setIcon(icon2); 104 folder.setName(name2);
105 105 folder.setIcon(icon2);
106 VERIFYEXEC(Store::modify(folder)); 106
107 VERIFYEXEC(ResourceControl::flushMessageQueue(QByteArrayList() << mResourceInstanceIdentifier)); 107 VERIFYEXEC(Store::modify(folder));
108 { 108 VERIFYEXEC(ResourceControl::flushMessageQueue(QByteArrayList() << mResourceInstanceIdentifier));
109 auto job = Store::fetchAll<Folder>(Query::RequestedProperties(QByteArrayList() << Folder::Name::name << Folder::Icon::name)) 109 {
110 .then<void, QList<Folder::Ptr>>([=](const QList<Folder::Ptr> &folders) { 110 auto job = Store::fetchAll<Folder>(Query::RequestedProperties(QByteArrayList() << Folder::Name::name << Folder::Icon::name))
111 QCOMPARE(folders.size(), baseCount + 1); 111 .then<void, QList<Folder::Ptr>>([=](const QList<Folder::Ptr> &folders) {
112 QHash<QString, Folder::Ptr> foldersByName; 112 QCOMPARE(folders.size(), baseCount + 1);
113 for (const auto &folder : folders) { 113 QHash<QString, Folder::Ptr> foldersByName;
114 foldersByName.insert(folder->getName(), folder); 114 for (const auto &folder : folders) {
115 } 115 foldersByName.insert(folder->getName(), folder);
116 QVERIFY(foldersByName.contains(name2)); 116 }
117 auto folder = *foldersByName.value(name2); 117 QVERIFY(foldersByName.contains(name2));
118 QCOMPARE(folder.getName(), name2); 118 auto folder = *foldersByName.value(name2);
119 QCOMPARE(folder.getIcon(), icon2); 119 QCOMPARE(folder.getName(), name2);
120 }); 120 QCOMPARE(folder.getIcon(), icon2);
121 VERIFYEXEC(job); 121 });
122 VERIFYEXEC(job);
123 }
124 VERIFYEXEC(ResourceControl::flushReplayQueue(QByteArrayList() << mResourceInstanceIdentifier));
125 VERIFYEXEC(ResourceControl::inspect<ApplicationDomain::Folder>(ResourceControl::Inspection::ExistenceInspection(folder, true)));
122 } 126 }
123 VERIFYEXEC(ResourceControl::flushReplayQueue(QByteArrayList() << mResourceInstanceIdentifier));
124 VERIFYEXEC(ResourceControl::inspect<ApplicationDomain::Folder>(ResourceControl::Inspection::ExistenceInspection(folder, true)));
125 127
126 VERIFYEXEC(Store::remove(folder)); 128 VERIFYEXEC(Store::remove(folder));
127 VERIFYEXEC(ResourceControl::flushMessageQueue(QByteArrayList() << mResourceInstanceIdentifier)); 129 VERIFYEXEC(ResourceControl::flushMessageQueue(QByteArrayList() << mResourceInstanceIdentifier));