File indexing completed on 2024-04-14 05:12:19

0001 /*
0002     SPDX-FileCopyrightText: 2010 Leo Franchi <lfranchi@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-only
0005 */
0006 
0007 #include <QTest>
0008 
0009 #include "rfc2231test.h"
0010 
0011 #include "kmime_util.h"
0012 #include <kmime_codecs.cpp>
0013 #include <QDebug>
0014 using namespace KMime;
0015 
0016 QTEST_MAIN(RFC2231Test)
0017 
0018 void RFC2231Test::testInvalidDecode()
0019 {
0020     /* QByteArray encCharset;
0021 
0022      // invalid / incomplete encoded data
0023      QCOMPARE( decodeRFC2231String( "=", encCharset ), QString::fromUtf8("=") );
0024      QCOMPARE( decodeRFC2231String( "=?", encCharset ), QString::fromUtf8("=?") );
0025      QCOMPARE( decodeRFC2231String( "=?a?b?=", encCharset ), QString::fromUtf8("=?a?b?=") );
0026      QCOMPARE( decodeRFC2231String( "=?a?b?c?", encCharset ), QString::fromUtf8("=?a?b?c?") );
0027      QCOMPARE( decodeRFC2231String( "=?a??c?=", encCharset ), QString::fromUtf8("=?a??c?=") ); */
0028 }
0029 
0030 void RFC2231Test::testRFC2231encode()
0031 {
0032     // empty
0033     QCOMPARE(KMime::encodeRFC2047String(QString(), "utf-8"), QByteArray());
0034     // identity
0035     QCOMPARE(KMime::encodeRFC2047String(u"bla", "utf-8"), QByteArray("bla"));
0036     QCOMPARE(KMime::encodeRFC2231String(QString::fromUtf8("with accents òóèéäïñ"), "utf-8").constData(),
0037              "utf-8''with%20accents%20%C3%83%C2%B2%C3%83%C2%B3%C3%83%C2%A8%C3%83%C2%A9%C3%83%C2%A4%C3%83%C2%AF%C3%83%C2%B1");
0038 }
0039 
0040 #include "moc_rfc2231test.cpp"