File indexing completed on 2025-03-09 04:54:27

0001 /*
0002    SPDX-FileCopyrightText: 2019-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "dkimkeyrecordtest.h"
0008 #include "dkim-verify/dkimkeyrecord.h"
0009 #include <QTest>
0010 QTEST_GUILESS_MAIN(DKIMKeyRecordTest)
0011 DKIMKeyRecordTest::DKIMKeyRecordTest(QObject *parent)
0012     : QObject(parent)
0013 {
0014 }
0015 
0016 void DKIMKeyRecordTest::shouldHaveDefaultValues()
0017 {
0018     MessageViewer::DKIMKeyRecord key;
0019     QVERIFY(key.version().isEmpty());
0020     QVERIFY(key.keyType().isEmpty());
0021     QVERIFY(key.publicKey().isEmpty());
0022     QVERIFY(key.note().isEmpty());
0023     QVERIFY(key.service().isEmpty());
0024     QVERIFY(key.hashAlgorithm().isEmpty());
0025     QVERIFY(key.flags().isEmpty());
0026 }
0027 
0028 void DKIMKeyRecordTest::shouldTestExtractDkimKeyRecord()
0029 {
0030     QFETCH(QString, dkimstr);
0031     QFETCH(MessageViewer::DKIMKeyRecord, dkiminforesult);
0032     QFETCH(bool, isValid);
0033     MessageViewer::DKIMKeyRecord info;
0034     QCOMPARE(info.parseKey(dkimstr), isValid);
0035     if (isValid) {
0036         const bool isEqual = (info == dkiminforesult);
0037         if (!isEqual) {
0038             qDebug() << " info" << info;
0039             qDebug() << " dkiminforesult" << dkiminforesult;
0040         }
0041         QVERIFY(isEqual);
0042     }
0043 }
0044 
0045 void DKIMKeyRecordTest::shouldTestExtractDkimKeyRecord_data()
0046 {
0047     QTest::addColumn<QString>("dkimstr");
0048     QTest::addColumn<MessageViewer::DKIMKeyRecord>("dkiminforesult");
0049     QTest::addColumn<bool>("isValid");
0050     QTest::addRow("empty") << QString() << MessageViewer::DKIMKeyRecord() << false;
0051 }
0052 
0053 #include "moc_dkimkeyrecordtest.cpp"