File indexing completed on 2025-03-09 04:53:56
0001 /* 0002 SPDX-FileCopyrightText: 2014-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "sendlaterinfotest.h" 0008 #include "sendlater/sendlaterinfo.h" 0009 0010 #include <QDateTime> 0011 #include <QStandardPaths> 0012 #include <QTest> 0013 0014 SendLaterInfoTest::SendLaterInfoTest(QObject *parent) 0015 : QObject(parent) 0016 { 0017 QStandardPaths::setTestModeEnabled(true); 0018 } 0019 0020 void SendLaterInfoTest::shouldHaveDefaultValue() 0021 { 0022 MessageComposer::SendLaterInfo info; 0023 QCOMPARE(info.itemId(), Akonadi::Item::Id(-1)); 0024 QCOMPARE(info.isRecurrence(), false); 0025 QVERIFY(!info.dateTime().isValid()); 0026 QVERIFY(!info.lastDateTimeSend().isValid()); 0027 QCOMPARE(info.to(), QString()); 0028 QCOMPARE(info.subject(), QString()); 0029 QVERIFY(!info.isValid()); 0030 QCOMPARE(info.recurrenceUnit(), MessageComposer::SendLaterInfo::Days); 0031 QCOMPARE(info.recurrenceEachValue(), 1); 0032 } 0033 0034 void SendLaterInfoTest::shouldNotValidIfIdIsNotValid() 0035 { 0036 MessageComposer::SendLaterInfo info; 0037 const QString to = QStringLiteral("kde.org"); 0038 info.setTo(to); 0039 info.setSubject(QStringLiteral("Subject")); 0040 info.setRecurrence(true); 0041 info.setRecurrenceEachValue(5); 0042 info.setRecurrenceUnit(MessageComposer::SendLaterInfo::Years); 0043 const QDate date(2014, 1, 1); 0044 info.setDateTime(QDateTime(date.startOfDay())); 0045 info.setLastDateTimeSend(QDateTime(date.startOfDay())); 0046 QVERIFY(!info.isValid()); 0047 } 0048 0049 void SendLaterInfoTest::shouldNotValidIfDateIsNotValid() 0050 { 0051 MessageComposer::SendLaterInfo info; 0052 const QString to = QStringLiteral("kde.org"); 0053 info.setTo(to); 0054 info.setItemId(Akonadi::Item::Id(42)); 0055 info.setSubject(QStringLiteral("Subject")); 0056 info.setRecurrence(true); 0057 info.setRecurrenceEachValue(5); 0058 info.setRecurrenceUnit(MessageComposer::SendLaterInfo::Years); 0059 const QDate date(2014, 1, 1); 0060 info.setLastDateTimeSend(QDateTime(date.startOfDay())); 0061 QVERIFY(!info.isValid()); 0062 } 0063 0064 void SendLaterInfoTest::shouldCopyInfo() 0065 { 0066 MessageComposer::SendLaterInfo info; 0067 const QString to = QStringLiteral("kde.org"); 0068 info.setTo(to); 0069 info.setItemId(Akonadi::Item::Id(42)); 0070 info.setSubject(QStringLiteral("Subject")); 0071 info.setRecurrence(true); 0072 info.setRecurrenceEachValue(5); 0073 info.setRecurrenceUnit(MessageComposer::SendLaterInfo::Years); 0074 const QDate date(2014, 1, 1); 0075 info.setDateTime(QDateTime(date.startOfDay())); 0076 info.setLastDateTimeSend(QDateTime(date.startOfDay())); 0077 MessageComposer::SendLaterInfo copyInfo(info); 0078 QCOMPARE(info, copyInfo); 0079 } 0080 0081 QTEST_MAIN(SendLaterInfoTest) 0082 0083 #include "moc_sendlaterinfotest.cpp"