File indexing completed on 2024-04-28 05:19:25
0001 /* 0002 SPDX-FileCopyrightText: 2007 Volker Krause <vkrause@kde.org> 0003 SPDX-FileCopyrightText: 2015 Andreas Cord-Landwehr <cordlandwehr@kde.org> 0004 0005 SPDX-License-Identifier: LGPL-2.0-or-later 0006 */ 0007 0008 #include "parsertest.h" 0009 0010 #include "config-ktnef-tests.h" 0011 0012 #include "ktnef/ktnefattach.h" 0013 #include "ktnef/ktnefmessage.h" 0014 #include "ktnef/ktnefparser.h" 0015 0016 #include <QString> 0017 #include <QTest> 0018 0019 using namespace KTnef; 0020 0021 QTEST_GUILESS_MAIN(ParserTest) 0022 0023 void ParserTest::testSingleAttachment() 0024 { 0025 KTNEFParser parser; 0026 QVERIFY(parser.openFile(QString(QLatin1StringView(TESTSOURCEDIR) + QLatin1StringView("one-file.tnef"))) == true); 0027 0028 KTNEFMessage *msg = parser.message(); 0029 QVERIFY(msg != nullptr); 0030 0031 QList<KTNEFAttach *> atts = msg->attachmentList(); 0032 QVERIFY(atts.count() == 1); 0033 0034 KTNEFAttach *att = atts.first(); 0035 QVERIFY(att != nullptr); 0036 QVERIFY(att->size() == 244); 0037 QVERIFY(att->name() == QLatin1StringView("AUTHORS")); 0038 } 0039 0040 void ParserTest::testTwoAttachments() 0041 { 0042 KTNEFParser parser; 0043 QVERIFY(parser.openFile(QString(QLatin1StringView(TESTSOURCEDIR) + QLatin1StringView("two-files.tnef"))) == true); 0044 0045 KTNEFMessage *msg = parser.message(); 0046 QVERIFY(msg != nullptr); 0047 0048 QList<KTNEFAttach *> atts = msg->attachmentList(); 0049 QVERIFY(atts.count() == 2); 0050 0051 KTNEFAttach *att = atts.takeFirst(); 0052 QVERIFY(att != nullptr); 0053 QVERIFY(att->size() == 244); 0054 QVERIFY(att->name() == QLatin1StringView("AUTHORS")); 0055 0056 att = atts.takeFirst(); 0057 QVERIFY(att != nullptr); 0058 QVERIFY(att->size() == 893); 0059 QVERIFY(att->name() == QLatin1StringView("README")); 0060 } 0061 0062 void ParserTest::testMAPIAttachments() 0063 { 0064 KTNEFParser parser; 0065 QVERIFY(parser.openFile(QString(QLatin1StringView(TESTSOURCEDIR) + QLatin1StringView("mapi_attach_data_obj.tnef"))) == true); 0066 0067 KTNEFMessage *msg = parser.message(); 0068 QVERIFY(msg != nullptr); 0069 0070 QList<KTNEFAttach *> atts = msg->attachmentList(); 0071 QVERIFY(atts.count() == 3); 0072 0073 KTNEFAttach *att = atts.takeFirst(); 0074 QVERIFY(att != nullptr); 0075 QVERIFY(att->size() == 61952); 0076 QVERIFY(att->name() == QLatin1StringView("VIA_Nytt_1402.doc")); 0077 0078 att = atts.takeFirst(); 0079 QVERIFY(att != nullptr); 0080 QVERIFY(att->size() == 213688); 0081 QVERIFY(att->name() == QLatin1StringView("VIA_Nytt_1402.pdf")); 0082 0083 att = atts.takeFirst(); 0084 QVERIFY(att != nullptr); 0085 QVERIFY(att->size() == 68920); 0086 QVERIFY(att->name() == QLatin1StringView("VIA_Nytt_14021.htm")); 0087 } 0088 0089 void ParserTest::testUmlautAttachmentFilenames() 0090 { 0091 KTNEFParser parser; 0092 QVERIFY(parser.openFile(QString(QLatin1StringView(TESTSOURCEDIR) + QLatin1StringView("umlaut-filename.tnef"))) == true); 0093 0094 KTNEFMessage *msg = parser.message(); 0095 QVERIFY(msg != nullptr); 0096 0097 QList<KTNEFAttach *> atts = msg->attachmentList(); 0098 QVERIFY(atts.count() == 1); 0099 0100 KTNEFAttach *att = atts.first(); 0101 QCOMPARE(att->fileName(), QString::fromUtf8("döcument.pdf")); 0102 } 0103 0104 #include "moc_parsertest.cpp"