From 961b3c5775a805eae02718884cfa9dedc8188897 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Mon, 9 Oct 2017 16:10:12 +0200 Subject: Ensure we copy all blobs when copying to another resource --- tests/interresourcemovetest.cpp | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) (limited to 'tests') diff --git a/tests/interresourcemovetest.cpp b/tests/interresourcemovetest.cpp index 5438bc7..174befc 100644 --- a/tests/interresourcemovetest.cpp +++ b/tests/interresourcemovetest.cpp @@ -121,24 +121,26 @@ private slots: void testCopy() { - Event event("instance1"); - event.setProperty("uid", "testuid"); - QCOMPARE(event.getProperty("uid").toByteArray(), QByteArray("testuid")); - event.setProperty("summary", "summaryValue"); - VERIFYEXEC(Sink::Store::create(event)); + QByteArray testuid = "testuid@test.test"; + QString subject = "summaryValue"; + auto mimeMessage = message(testuid, subject); + + Mail mail("instance1"); + mail.setMimeMessage(mimeMessage); + VERIFYEXEC(Sink::Store::create(mail)); - Event createdEvent; + Mail createdMail; // Ensure all local data is processed VERIFYEXEC(Sink::ResourceControl::flushMessageQueue(QByteArrayList() << "instance1")); { auto query = Query().resourceFilter("instance1") ; - auto list = Sink::Store::read(query.filter("testuid")); + auto list = Sink::Store::read(query.filter(testuid)); QCOMPARE(list.size(), 1); - createdEvent = list.first(); + createdMail = list.first(); } - VERIFYEXEC(Sink::Store::copy(createdEvent, "instance2")); + VERIFYEXEC(Sink::Store::copy(createdMail, "instance2")); //FIXME we can't guarantee that that the create command arrives at instance2 before the flush command, so we'll just wait for a little bit. QTest::qWait(100); @@ -148,15 +150,23 @@ private slots: VERIFYEXEC(Sink::ResourceControl::flushMessageQueue(QByteArrayList() << "instance2")); { auto query = Query().resourceFilter("instance2") ; - auto list = Sink::Store::read(query.filter("testuid")); + auto list = Sink::Store::read(query.filter(testuid)); QCOMPARE(list.size(), 1); + const auto mail = list.first(); + QVERIFY(!mail.getMimeMessagePath().isEmpty()); + QCOMPARE(mail.getSubject(), subject); + QCOMPARE(mail.getMimeMessage(), mimeMessage); } VERIFYEXEC(Sink::ResourceControl::flushMessageQueue(QByteArrayList() << "instance1")); { auto query = Query().resourceFilter("instance1") ; - auto list = Sink::Store::read(query.filter("testuid")); + auto list = Sink::Store::read(query.filter(testuid)); QCOMPARE(list.size(), 1); + const auto mail = list.first(); + QVERIFY(!mail.getMimeMessagePath().isEmpty()); + QCOMPARE(mail.getSubject(), subject); + QCOMPARE(mail.getMimeMessage(), mimeMessage); } } -- cgit v1.2.3