File indexing completed on 2025-02-16 04:49:30

0001 /*
0002    SPDX-FileCopyrightText: 2016-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #include "checkduplicateemailsdialogtest.h"
0008 #include "../duplicateemails/checkduplicateemailsdialog.h"
0009 #include <QDialogButtonBox>
0010 #include <QLabel>
0011 #include <QListWidget>
0012 #include <QStandardPaths>
0013 #include <QTest>
0014 
0015 CheckDuplicateEmailsDialogTest::CheckDuplicateEmailsDialogTest(QObject *parent)
0016     : QObject(parent)
0017 {
0018     QStandardPaths::setTestModeEnabled(true);
0019 }
0020 
0021 CheckDuplicateEmailsDialogTest::~CheckDuplicateEmailsDialogTest() = default;
0022 
0023 void CheckDuplicateEmailsDialogTest::shouldHaveDefaultValue()
0024 {
0025     CheckDuplicateEmailsDialog dlg;
0026     auto mListWidget = dlg.findChild<QListWidget *>(QStringLiteral("listwidget"));
0027     QVERIFY(mListWidget);
0028     QCOMPARE(mListWidget->count(), 0);
0029 
0030     auto buttonBox = dlg.findChild<QDialogButtonBox *>(QStringLiteral("buttonbox"));
0031     QVERIFY(buttonBox);
0032 
0033     auto lab = dlg.findChild<QLabel *>(QStringLiteral("label"));
0034     QVERIFY(lab);
0035     QVERIFY(!lab->text().isEmpty());
0036 }
0037 
0038 void CheckDuplicateEmailsDialogTest::shouldAddEmails()
0039 {
0040     CheckDuplicateEmailsDialog dlg;
0041     auto mListWidget = dlg.findChild<QListWidget *>(QStringLiteral("listwidget"));
0042 
0043     QMap<QString, int> map;
0044     map.insert(QStringLiteral("foo"), 5);
0045     map.insert(QStringLiteral("bla"), 5);
0046     map.insert(QStringLiteral("kde.org"), 7);
0047     map.insert(QStringLiteral("linux.fr"), 2);
0048     dlg.setDuplicatedEmails(map);
0049 
0050     QCOMPARE(mListWidget->count(), map.count());
0051 }
0052 
0053 QTEST_MAIN(CheckDuplicateEmailsDialogTest)
0054 
0055 #include "moc_checkduplicateemailsdialogtest.cpp"