File indexing completed on 2024-04-28 16:37:45
0001 /* 0002 SPDX-FileCopyrightText: 2015 Volker Krause <vkrause@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "kmime_types.h" 0008 0009 #include <QTest> 0010 #include <QObject> 0011 0012 using namespace KMime; 0013 0014 class TypesTest : public QObject 0015 { 0016 Q_OBJECT 0017 private Q_SLOTS: 0018 0019 void testListParsing() 0020 { 0021 auto list = Types::Mailbox::listFrom7BitString(""); 0022 QCOMPARE(list.size(), 0); 0023 list = Types::Mailbox::listFromUnicodeString(QString()); 0024 QCOMPARE(list.size(), 0); 0025 0026 list = Types::Mailbox::listFrom7BitString("Name <name@example.local>, Name 2 <name2@example.local>"); 0027 QCOMPARE(list.size(), 2); 0028 QCOMPARE(list.at(0).name(), QStringLiteral("Name")); 0029 QCOMPARE(list.at(1).address(), QByteArray("name2@example.local")); 0030 0031 list = Types::Mailbox::listFromUnicodeString(QStringLiteral("Name <name@example.local>, Name 2 <name2@example.local>")); 0032 QCOMPARE(list.size(), 2); 0033 QCOMPARE(list.at(0).name(), QStringLiteral("Name")); 0034 QCOMPARE(list.at(1).address(), QByteArray("name2@example.local")); 0035 } 0036 0037 void testListToString() 0038 { 0039 QList<Types::Mailbox> mboxes; 0040 QCOMPARE(Types::Mailbox::listToUnicodeString(mboxes), QString()); 0041 0042 Types::Mailbox mbox; 0043 mbox.setAddress("name@example.local"); 0044 mboxes.push_back(mbox); 0045 QCOMPARE(Types::Mailbox::listToUnicodeString(mboxes), QStringLiteral("name@example.local")); 0046 0047 mbox.setName(QStringLiteral("First Last")); 0048 mboxes.push_back(mbox); 0049 QCOMPARE(Types::Mailbox::listToUnicodeString(mboxes), QStringLiteral("name@example.local, First Last <name@example.local>")); 0050 } 0051 }; 0052 0053 QTEST_MAIN(TypesTest) 0054 0055 #include "typestest.moc"