From f9379318d801df204cc50385c5eca1f28e91755e Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Thu, 30 Jun 2016 17:31:33 +0200 Subject: Maildir trash support --- examples/maildirresource/maildirresource.cpp | 14 ++++++++++---- tests/mailsynctest.cpp | 5 +++++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/examples/maildirresource/maildirresource.cpp b/examples/maildirresource/maildirresource.cpp index b14a1bd..e1fcfdf 100644 --- a/examples/maildirresource/maildirresource.cpp +++ b/examples/maildirresource/maildirresource.cpp @@ -473,10 +473,16 @@ MaildirResource::MaildirResource(const QByteArray &instanceIdentifier, const QSh KPIM::Maildir dir(mMaildirPath, true); Trace() << "Started maildir resource for maildir: " << mMaildirPath; - auto draftsFolder = dir.addSubFolder("Drafts"); - - auto remoteId = synchronizer->createFolder(draftsFolder, "folder", QByteArrayList() << "drafts"); - auto draftsFolderLocalId = synchronizer->syncStore().resolveRemoteId(ENTITY_TYPE_FOLDER, remoteId); + { + auto draftsFolder = dir.addSubFolder("Drafts"); + auto remoteId = synchronizer->createFolder(draftsFolder, "folder", QByteArrayList() << "drafts"); + auto draftsFolderLocalId = synchronizer->syncStore().resolveRemoteId(ENTITY_TYPE_FOLDER, remoteId); + } + { + auto trashFolder = dir.addSubFolder("Trash"); + auto remoteId = synchronizer->createFolder(trashFolder, "folder", QByteArrayList() << "trash"); + auto trashFolderLocalId = synchronizer->syncStore().resolveRemoteId(ENTITY_TYPE_FOLDER, remoteId); + } synchronizer->commit(); } diff --git a/tests/mailsynctest.cpp b/tests/mailsynctest.cpp index ff56030..e70e34e 100644 --- a/tests/mailsynctest.cpp +++ b/tests/mailsynctest.cpp @@ -104,6 +104,11 @@ void MailSyncTest::testListFolders() names.removeAll("Drafts"); QVERIFY(specialPurposeFolders.contains("drafts")); } + if (mCapabilities.contains(ResourceCapabilities::Mail::trash)) { + QVERIFY(names.contains("Trash")); + names.removeAll("Trash"); + QVERIFY(specialPurposeFolders.contains("trash")); + } QCOMPARE(names.size(), 2); QVERIFY(names.contains("INBOX")); QVERIFY(names.contains("test")); -- cgit v1.2.3