File indexing completed on 2025-03-09 04:55:13

0001 /*
0002    SPDX-FileCopyrightText: 2015-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #include "sieveeditorconfigureserverpagetest.h"
0008 #include "../src/sieveeditorconfigureserverpage.h"
0009 #include <QPushButton>
0010 #include <QSignalSpy>
0011 #include <QTest>
0012 #include <qtestmouse.h>
0013 SieveEditorConfigureServerPageTest::SieveEditorConfigureServerPageTest(QObject *parent)
0014     : QObject(parent)
0015 {
0016 }
0017 
0018 SieveEditorConfigureServerPageTest::~SieveEditorConfigureServerPageTest() = default;
0019 
0020 void SieveEditorConfigureServerPageTest::shouldHaveDefaultValue()
0021 {
0022     SieveEditorConfigureServerPage w;
0023     auto button = w.findChild<QPushButton *>(QStringLiteral("configure_button"));
0024     QVERIFY(button);
0025 
0026     auto importSieveSettings = w.findChild<QPushButton *>(QStringLiteral("import_sieve_settings_button"));
0027     QVERIFY(importSieveSettings);
0028 }
0029 
0030 void SieveEditorConfigureServerPageTest::shouldEmitSignalWhenClickOnConfigureButton()
0031 {
0032     SieveEditorConfigureServerPage w;
0033     auto button = w.findChild<QPushButton *>(QStringLiteral("configure_button"));
0034     QSignalSpy spy(&w, &SieveEditorConfigureServerPage::configureClicked);
0035     QTest::mouseClick(button, Qt::LeftButton);
0036     QCOMPARE(spy.count(), 1);
0037 }
0038 
0039 void SieveEditorConfigureServerPageTest::shouldEmitSignalWhenClickOnImportSieveButton()
0040 {
0041     SieveEditorConfigureServerPage w;
0042     auto button = w.findChild<QPushButton *>(QStringLiteral("import_sieve_settings_button"));
0043     QSignalSpy spy(&w, &SieveEditorConfigureServerPage::importSieveSettings);
0044     QTest::mouseClick(button, Qt::LeftButton);
0045     QCOMPARE(spy.count(), 1);
0046 }
0047 
0048 QTEST_MAIN(SieveEditorConfigureServerPageTest)
0049 
0050 #include "moc_sieveeditorconfigureserverpagetest.cpp"