1 /*
2     SPDX-FileCopyrightText: 2017 Sandro Knauß <sknauss@kde.org>
3 
4     SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6 
7 #include "davcollectiontest.h"
8 
9 #include <KDAV/DavCollection>
10 #include <KDAV/DavUrl>
11 
12 #include <QColor>
13 #include <QTest>
14 
createEmpty()15 void DavCollectionTest::createEmpty()
16 {
17     KDAV::DavCollection davCollection;
18 
19     QCOMPARE(davCollection.url().protocol(), KDAV::CalDav);
20     QCOMPARE(davCollection.CTag(), QString());
21     QCOMPARE(davCollection.displayName(), QString());
22     QCOMPARE(davCollection.color(), QColor());
23     QCOMPARE(davCollection.contentTypes(), KDAV::DavCollection::ContentTypes());
24     QCOMPARE(davCollection.privileges(), KDAV::Privileges());
25 }
26 
storeTest()27 void DavCollectionTest::storeTest()
28 {
29     QUrl url(QStringLiteral("test://me:pw@test"));
30     KDAV::DavUrl davUrl(url, KDAV::CardDav);
31     KDAV::DavCollection davCollection(davUrl, QStringLiteral("myname"), KDAV::DavCollection::Events | KDAV::DavCollection::Todos);
32 
33     QCOMPARE(davCollection.url().protocol(), KDAV::CardDav);
34     QCOMPARE(davCollection.url().url(), url);
35     QCOMPARE(davCollection.CTag(), QString());
36     QCOMPARE(davCollection.displayName(), QStringLiteral("myname"));
37     QCOMPARE(davCollection.color(), QColor());
38     QCOMPARE(davCollection.contentTypes(), KDAV::DavCollection::Events | KDAV::DavCollection::Todos);
39     QCOMPARE(davCollection.privileges(), KDAV::All);
40 }
41 
setTest()42 void DavCollectionTest::setTest()
43 {
44     QUrl url(QStringLiteral("test://me:pw@test"));
45     KDAV::DavUrl davUrl(url, KDAV::CardDav);
46     KDAV::DavCollection davCollection;
47 
48     davCollection.setUrl(davUrl);
49     davCollection.setCTag(QStringLiteral("ctag"));
50     davCollection.setDisplayName(QStringLiteral("myname"));
51     davCollection.setColor(QColor(1, 2, 3));
52     davCollection.setContentTypes(KDAV::DavCollection::Events | KDAV::DavCollection::Todos);
53     davCollection.setPrivileges(KDAV::Read | KDAV::Write);
54 
55     QCOMPARE(davCollection.url().protocol(), KDAV::CardDav);
56     QCOMPARE(davCollection.url().url(), url);
57     QCOMPARE(davCollection.CTag(), QStringLiteral("ctag"));
58     QCOMPARE(davCollection.displayName(), QStringLiteral("myname"));
59     QCOMPARE(davCollection.color(), QColor(1, 2, 3));
60     QCOMPARE(davCollection.contentTypes(), KDAV::DavCollection::Events | KDAV::DavCollection::Todos);
61     QCOMPARE(davCollection.privileges(), KDAV::Read | KDAV::Write);
62 }
63 
copyTest()64 void DavCollectionTest::copyTest()
65 {
66     KDAV::DavCollection davCollection;
67 
68     QUrl url(QStringLiteral("test://me:pw@test"));
69     KDAV::DavUrl davUrl(url, KDAV::CardDav);
70 
71     davCollection.setUrl(davUrl);
72     davCollection.setCTag(QStringLiteral("ctag"));
73     davCollection.setDisplayName(QStringLiteral("myname"));
74     davCollection.setColor(QColor(1, 2, 3));
75     davCollection.setContentTypes(KDAV::DavCollection::Events | KDAV::DavCollection::Todos);
76     davCollection.setPrivileges(KDAV::Read | KDAV::Write);
77 
78     KDAV::DavCollection copy1(davCollection);
79     QCOMPARE(copy1.url().protocol(), davCollection.url().protocol());
80     QCOMPARE(copy1.url().url(), davCollection.url().url());
81     QCOMPARE(copy1.CTag(), davCollection.CTag());
82     QCOMPARE(copy1.displayName(), davCollection.displayName());
83     QCOMPARE(copy1.color(), davCollection.color());
84     QCOMPARE(copy1.contentTypes(), davCollection.contentTypes());
85     QCOMPARE(copy1.privileges(), davCollection.privileges());
86 
87     KDAV::DavCollection copy2;
88     copy2 = davCollection;
89 
90     QCOMPARE(copy2.url().protocol(), davCollection.url().protocol());
91     QCOMPARE(copy2.url().url(), davCollection.url().url());
92     QCOMPARE(copy2.CTag(), davCollection.CTag());
93     QCOMPARE(copy2.displayName(), davCollection.displayName());
94     QCOMPARE(copy2.color(), davCollection.color());
95     QCOMPARE(copy2.contentTypes(), davCollection.contentTypes());
96     QCOMPARE(copy2.privileges(), davCollection.privileges());
97 }
98 
99 QTEST_MAIN(DavCollectionTest)
100