From 4f7a99489eefa8d6c7bee5e56b42e1bf90745783 Mon Sep 17 00:00:00 2001 From: Minijackson Date: Thu, 8 Mar 2018 16:26:04 +0100 Subject: Adapting the 2nd test + fixing key attachment name in the 1st --- .../src/domain/mime/tests/mailtemplatetest.cpp | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/framework/src/domain/mime/tests/mailtemplatetest.cpp b/framework/src/domain/mime/tests/mailtemplatetest.cpp index 16c7ebff..d5642bb6 100644 --- a/framework/src/domain/mime/tests/mailtemplatetest.cpp +++ b/framework/src/domain/mime/tests/mailtemplatetest.cpp @@ -31,16 +31,16 @@ static std::vector< GpgME::Key, std::allocator< GpgME::Key > > getKeys(bool smim if (smime) { const QGpgME::Protocol *const backend = QGpgME::smime(); Q_ASSERT(backend); - job = backend->keyListJob(false); + job = backend->keyListJob(/* remote = */ false); } else { const QGpgME::Protocol *const backend = QGpgME::openpgp(); Q_ASSERT(backend); - job = backend->keyListJob(false); + job = backend->keyListJob(/* remote = */ false); } Q_ASSERT(job); std::vector< GpgME::Key > keys; - GpgME::KeyListResult res = job->exec(QStringList(), true, keys); + GpgME::KeyListResult res = job->exec(QStringList(), /* secretOnly = */ true, keys); if (!smime) { Q_ASSERT(keys.size() == 3); @@ -413,7 +413,7 @@ private slots: QCOMPARE(result->contentType()->mimeType(), "multipart/mixed"); auto resultAttachments = result->attachments(); QCOMPARE(resultAttachments.size(), 1); - QCOMPARE(resultAttachments[0]->contentDisposition()->filename(), "0xblablabl.asc"); + QCOMPARE(resultAttachments[0]->contentDisposition()->filename(), "0x8F246DE6.asc"); auto signedMessage = result->contents()[0]; @@ -449,9 +449,19 @@ private slots: QVERIFY(result); QCOMPARE(result->subject()->asUnicodeString(), subject); QVERIFY(result->date(false)->dateTime().isValid()); - QVERIFY(result->contentType()->isMimeType("multipart/signed")); - const auto contents = result->contents(); + QCOMPARE(result->contentType()->mimeType(), "multipart/mixed"); + auto resultAttachments = result->attachments(); + QCOMPARE(resultAttachments.size(), 3); + // It seems KMime searches for the attachments using depth-first + // search, so the public key is last + QCOMPARE(resultAttachments[2]->contentDisposition()->filename(), "0x8F246DE6.asc"); + + auto signedMessage = result->contents()[0]; + + QVERIFY(signedMessage->contentType()->isMimeType("multipart/signed")); + + const auto contents = signedMessage->contents(); QCOMPARE(contents.size(), 2); { auto c = contents.at(0); -- cgit v1.2.3