File indexing completed on 2025-02-16 04:56:07
0001 /* 0002 SPDX-FileCopyrightText: 2017-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "vacationmailactionwidgettest.h" 0008 #include "../vacationmailactionwidget.h" 0009 #include "ksieveui/abstractselectemaillineedit.h" 0010 #include <KSieveUi/AbstractMoveImapFolderWidget> 0011 #include <QHBoxLayout> 0012 #include <QStackedWidget> 0013 #include <QTest> 0014 0015 QTEST_MAIN(VacationMailActionWidgetTest) 0016 0017 VacationMailActionWidgetTest::VacationMailActionWidgetTest(QObject *parent) 0018 : QObject(parent) 0019 { 0020 } 0021 0022 void VacationMailActionWidgetTest::shouldHaveDefaultValue() 0023 { 0024 KSieveUi::VacationMailActionWidget w; 0025 0026 auto mainLayout = w.findChild<QHBoxLayout *>(QStringLiteral("mainlayout")); 0027 QVERIFY(mainLayout); 0028 QCOMPARE(mainLayout->contentsMargins(), QMargins(0, 0, 0, 0)); 0029 0030 auto mStackedWidget = w.findChild<QStackedWidget *>(QStringLiteral("stackedWidget")); 0031 QVERIFY(mStackedWidget); 0032 0033 QCOMPARE(mStackedWidget->count(), 3); 0034 QWidget *mMailActionRecipient = mStackedWidget->widget(0); 0035 QVERIFY(mMailActionRecipient); 0036 QCOMPARE(mMailActionRecipient->objectName(), QStringLiteral("mailActionRecipient")); 0037 QVERIFY(!mMailActionRecipient->isEnabled()); 0038 0039 QCOMPARE(mStackedWidget->currentIndex(), 0); 0040 0041 QWidget *mMoveImapFolderWidget = mStackedWidget->widget(1); 0042 QVERIFY(mMoveImapFolderWidget); 0043 auto *abstractMoveImapFolderWidget = dynamic_cast<KSieveUi::AbstractMoveImapFolderWidget *>(mMoveImapFolderWidget); 0044 QVERIFY(abstractMoveImapFolderWidget); 0045 QCOMPARE(abstractMoveImapFolderWidget->objectName(), QStringLiteral("moveImapFolderWidget")); 0046 0047 QWidget *mSelectEmailLineEdit = mStackedWidget->widget(2); 0048 QVERIFY(mSelectEmailLineEdit); 0049 0050 auto *abstractSelectEmailWidget = dynamic_cast<KSieveUi::AbstractSelectEmailLineEdit *>(mSelectEmailLineEdit); 0051 QVERIFY(abstractSelectEmailWidget); 0052 QCOMPARE(abstractSelectEmailWidget->objectName(), QStringLiteral("selectEmailLineEdit")); 0053 0054 bool ok; 0055 QVERIFY(w.mailActionRecipient(ok).isEmpty()); 0056 } 0057 0058 void VacationMailActionWidgetTest::shouldSwitchComponents() 0059 { 0060 KSieveUi::VacationMailActionWidget w; 0061 auto mStackedWidget = w.findChild<QStackedWidget *>(QStringLiteral("stackedWidget")); 0062 0063 w.mailActionChanged(KSieveCore::VacationUtils::Keep); 0064 QCOMPARE(mStackedWidget->currentIndex(), 0); 0065 bool ok; 0066 QVERIFY(w.mailActionRecipient(ok).isEmpty()); 0067 QVERIFY(!w.isEnabled()); 0068 0069 w.mailActionChanged(KSieveCore::VacationUtils::CopyTo); 0070 QCOMPARE(mStackedWidget->currentIndex(), 1); 0071 QVERIFY(w.mailActionRecipient(ok).isEmpty()); 0072 QVERIFY(w.isEnabled()); 0073 0074 w.mailActionChanged(KSieveCore::VacationUtils::Discard); 0075 QCOMPARE(mStackedWidget->currentIndex(), 0); 0076 QVERIFY(w.mailActionRecipient(ok).isEmpty()); 0077 QVERIFY(!w.isEnabled()); 0078 0079 w.mailActionChanged(KSieveCore::VacationUtils::Sendto); 0080 QCOMPARE(mStackedWidget->currentIndex(), 2); 0081 QVERIFY(w.mailActionRecipient(ok).isEmpty()); 0082 QVERIFY(w.isEnabled()); 0083 } 0084 0085 #include "moc_vacationmailactionwidgettest.cpp"