File indexing completed on 2024-04-21 05:50:40

0001 #include "kgpgchangetrust.h"
0002 #include "../transactions/kgpgchangetrust.h"
0003 #include "../kgpginterface.h"
0004 #include "common.h"
0005 
0006 #include <QString>
0007 #include <QSignalSpy>
0008 #include <QTest>
0009 
0010 void KGpgChangeTrustTest::init()
0011 {
0012     QVERIFY(resetGpgConf(m_tempdir));
0013 }
0014 
0015 void KGpgChangeTrustTest::testChangeTrust()
0016 {
0017     QFETCH(gpgme_validity_t, target_trust);
0018     QLatin1String keyID("BA7695F3C550DF14");
0019     addGpgKey(m_tempdir, QLatin1String("keys/kgpgtest_BA7695F3C550DF14.asc"));
0020     KGpgChangeTrust *transaction = new KGpgChangeTrust(this, keyID, target_trust);
0021     QSignalSpy spy(transaction, &KGpgChangeTrust::done);
0022     QObject::connect(transaction, &KGpgChangeTrust::done,
0023              [](int result) { QCOMPARE(result, static_cast<int>(KGpgTransaction::TS_OK)); });
0024     transaction->start();
0025     QVERIFY(spy.wait(10000));
0026     KgpgCore::KgpgKeyList keyList = KgpgInterface::readPublicKeys(QStringList(keyID));
0027     QVERIFY(!keyList.isEmpty());
0028     QCOMPARE(keyList.first().ownerTrust(), target_trust);
0029 }
0030 
0031 void KGpgChangeTrustTest::testChangeTrust_data()
0032 {
0033     QTest::addColumn<gpgme_validity_t>("target_trust");
0034     QTest::newRow("ultimate") << GPGME_VALIDITY_ULTIMATE;
0035     QTest::newRow("full") << GPGME_VALIDITY_FULL;
0036     QTest::newRow("marginal") << GPGME_VALIDITY_MARGINAL;
0037     QTest::newRow("never") << GPGME_VALIDITY_NEVER;
0038 }
0039 
0040 QTEST_GUILESS_MAIN(KGpgChangeTrustTest)