File indexing completed on 2024-04-14 03:51:43

0001 /*
0002     SPDX-FileCopyrightText: 2017 Sandro Knauß <sknauss@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "davitemtest.h"
0008 
0009 #include <KDAV/DavItem>
0010 #include <KDAV/DavUrl>
0011 
0012 #include <QDataStream>
0013 #include <QTest>
0014 
0015 void DavItemTest::createEmpty()
0016 {
0017     KDAV::DavItem davItem;
0018 
0019     QCOMPARE(davItem.url().toDisplayString(), QString());
0020     QCOMPARE(davItem.contentType(), QString());
0021     QCOMPARE(davItem.data(), QByteArray());
0022     QCOMPARE(davItem.etag(), QString());
0023 }
0024 
0025 void DavItemTest::storeTest()
0026 {
0027     QUrl url(QStringLiteral("test://me:pw@test"));
0028     KDAV::DavUrl davUrl(url, KDAV::CardDav);
0029     KDAV::DavItem davItem(davUrl, QStringLiteral("text/test"), QByteArray("data"), QStringLiteral("991233434-234345"));
0030 
0031     QCOMPARE(davItem.url().protocol(), KDAV::CardDav);
0032     QCOMPARE(davItem.contentType(), QStringLiteral("text/test"));
0033     QCOMPARE(davItem.data(), QByteArray("data"));
0034     QCOMPARE(davItem.etag(), QStringLiteral("991233434-234345"));
0035 }
0036 
0037 void DavItemTest::setTest()
0038 {
0039     QUrl url(QStringLiteral("test://me:pw@test"));
0040     KDAV::DavUrl davUrl(url, KDAV::CardDav);
0041     KDAV::DavItem davItem;
0042 
0043     davItem.setUrl(davUrl);
0044     davItem.setContentType(QStringLiteral("text/test"));
0045     davItem.setData(QByteArray("data"));
0046     davItem.setEtag(QStringLiteral("991233434-234345"));
0047 
0048     QCOMPARE(davItem.url().protocol(), KDAV::CardDav);
0049     QCOMPARE(davItem.contentType(), QStringLiteral("text/test"));
0050     QCOMPARE(davItem.data(), QByteArray("data"));
0051     QCOMPARE(davItem.etag(), QStringLiteral("991233434-234345"));
0052 }
0053 
0054 void DavItemTest::copyTest()
0055 {
0056     QUrl url(QStringLiteral("test://me:pw@test"));
0057     KDAV::DavUrl davUrl(url, KDAV::CardDav);
0058     KDAV::DavItem davItem(davUrl, QStringLiteral("text/test"), QByteArray("data"), QStringLiteral("991233434-234345"));
0059 
0060     KDAV::DavItem davItemCopy1(davItem);
0061     QCOMPARE(davItemCopy1.url().protocol(), davItem.url().protocol());
0062     QCOMPARE(davItemCopy1.url().url(), davItem.url().url());
0063     QCOMPARE(davItemCopy1.contentType(), davItem.contentType());
0064     QCOMPARE(davItemCopy1.data(), davItem.data());
0065     QCOMPARE(davItemCopy1.etag(), davItem.etag());
0066 
0067     KDAV::DavItem davItemCopy2;
0068     davItemCopy2 = davItem;
0069     QCOMPARE(davItemCopy2.url().protocol(), davItem.url().protocol());
0070     QCOMPARE(davItemCopy2.url().url(), davItem.url().url());
0071     QCOMPARE(davItemCopy2.contentType(), davItem.contentType());
0072     QCOMPARE(davItemCopy2.data(), davItem.data());
0073     QCOMPARE(davItemCopy2.etag(), davItem.etag());
0074 }
0075 
0076 void DavItemTest::serializeTest()
0077 {
0078     KDAV::DavItem davItem1;
0079     KDAV::DavItem davItem2;
0080 
0081     QUrl url(QStringLiteral("test://me:pw@test"));
0082     KDAV::DavUrl davUrl(url, KDAV::CardDav);
0083 
0084     davItem1.setUrl(davUrl);
0085     davItem1.setContentType(QStringLiteral("text/test"));
0086     davItem1.setData(QByteArray("data"));
0087     davItem1.setEtag(QStringLiteral("991233434-234345"));
0088 
0089     QByteArray data;
0090     QDataStream s(&data, QIODevice::WriteOnly);
0091     s << davItem1;
0092 
0093     QDataStream t(&data, QIODevice::ReadOnly);
0094     t >> davItem2;
0095 
0096     QCOMPARE(davItem2.url().protocol(), davItem1.url().protocol());
0097     QCOMPARE(davItem2.url().url(), davItem1.url().url());
0098     QCOMPARE(davItem2.contentType(), davItem1.contentType());
0099     QCOMPARE(davItem2.data(), davItem1.data());
0100     QCOMPARE(davItem2.etag(), davItem1.etag());
0101 }
0102 
0103 QTEST_MAIN(DavItemTest)
0104 
0105 #include "moc_davitemtest.cpp"