Warning, file /pim/incidenceeditor/autotests/testindividualmaildialog.cpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* 0002 SPDX-FileCopyrightText: 2014 Sandro Knauß <knauss@kolabsys.com> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "individualmaildialog.h" 0008 0009 #include <KGuiItem> 0010 0011 #include <QComboBox> 0012 #include <QObject> 0013 #include <QTest> 0014 0015 using namespace IncidenceEditorNG; 0016 0017 class TestIndividualMailDialog : public QObject 0018 { 0019 Q_OBJECT 0020 private Q_SLOTS: 0021 void testDialog() 0022 { 0023 KCalendarCore::Attendee::List attendees; 0024 KGuiItem buttonYes = KGuiItem(QStringLiteral("Send Email")); 0025 KGuiItem buttonNo = KGuiItem(QStringLiteral("Do not send")); 0026 0027 KCalendarCore::Attendee attendee1(QStringLiteral("test1"), QStringLiteral("test1@example.com")); 0028 KCalendarCore::Attendee attendee2(QStringLiteral("test2"), QStringLiteral("test2@example.com")); 0029 KCalendarCore::Attendee attendee3(QStringLiteral("test3"), QStringLiteral("test3@example.com")); 0030 0031 attendees << attendee1 << attendee2 << attendee3; 0032 0033 IndividualMailDialog dialog(QStringLiteral("title"), attendees, buttonYes, buttonNo, nullptr); 0034 0035 QCOMPARE(dialog.editAttendees().count(), 0); 0036 QCOMPARE(dialog.updateAttendees().count(), 3); 0037 0038 // Just make sure, that the QCombobox is sorted like we think 0039 QComboBox *first = dialog.mAttendeeDecision[0].second; 0040 QCOMPARE((IndividualMailDialog::Decisions)first->itemData(0, Qt::UserRole).toInt(), IndividualMailDialog::Update); 0041 QCOMPARE((IndividualMailDialog::Decisions)first->itemData(1, Qt::UserRole).toInt(), IndividualMailDialog::NoUpdate); 0042 QCOMPARE((IndividualMailDialog::Decisions)first->itemData(2, Qt::UserRole).toInt(), IndividualMailDialog::Edit); 0043 0044 // No update for first attendee, other default 0045 first->setCurrentIndex(1); 0046 QCOMPARE(dialog.editAttendees().count(), 0); 0047 QCOMPARE(dialog.updateAttendees().count(), 2); 0048 QVERIFY(dialog.updateAttendees().contains(attendee2)); 0049 QVERIFY(dialog.updateAttendees().contains(attendee3)); 0050 0051 // edit for first attendee, other default 0052 first->setCurrentIndex(2); 0053 QCOMPARE(dialog.editAttendees().count(), 1); 0054 QCOMPARE(dialog.updateAttendees().count(), 2); 0055 QCOMPARE(dialog.editAttendees().constFirst(), attendee1); 0056 } 0057 }; 0058 0059 QTEST_MAIN(TestIndividualMailDialog) 0060 0061 #include "testindividualmaildialog.moc"