Qt: Add test for async keylisting

* src/lang/qt/tests/t-keylist.cpp(KeyListTest::testKeyListAsync): New.
This commit is contained in:
Andre Heinecke 2016-05-06 16:33:49 +02:00
parent a579be82c8
commit 0e3195948d

View File

@ -1,15 +1,20 @@
#include <QDebug> #include <QDebug>
#include <QTest> #include <QTest>
#include <QSignalSpy>
#include "keylistjob.h" #include "keylistjob.h"
#include "qgpgmebackend.h" #include "qgpgmebackend.h"
#include "keylistresult.h" #include "keylistresult.h"
using namespace QGpgME; using namespace QGpgME;
using namespace GpgME;
class KeyListTest : public QObject class KeyListTest : public QObject
{ {
Q_OBJECT Q_OBJECT
Q_SIGNALS:
void asyncDone();
private Q_SLOTS: private Q_SLOTS:
void testSingleKeyListSync() void testSingleKeyListSync()
@ -24,6 +29,19 @@ private Q_SLOTS:
Q_ASSERT (kId == QStringLiteral("2D727CC768697734")); Q_ASSERT (kId == QStringLiteral("2D727CC768697734"));
} }
void testKeyListAsync()
{
KeyListJob *job = openpgp()->keyListJob();
connect(job, &KeyListJob::result, job, [this, job](KeyListResult, std::vector<Key> keys, QString, Error)
{
Q_ASSERT(keys.size() == 1);
Q_EMIT asyncDone();
});
job->start(QStringList() << "alfa@example.net");
QSignalSpy spy (this, &KeyListTest::asyncDone);
Q_ASSERT(spy.wait());
}
void initTestCase() void initTestCase()
{ {
const QString gpgHome = qgetenv("GNUPGHOME"); const QString gpgHome = qgetenv("GNUPGHOME");