forked from owncloud/client
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtestcookies.cpp
43 lines (34 loc) · 1.29 KB
/
testcookies.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/*
This software is in the public domain, furnished "as is", without technical
support, and with no warranty, express or implied, as to its usefulness for
any purpose.
*/
#include <QtTest>
#include "libsync/cookiejar.h"
using namespace OCC;
class TestCookies : public QObject
{
Q_OBJECT
private slots:
void testCookies()
{
QTemporaryDir tmp;
const QString nonexistingPath = tmp.filePath("someNonexistingDir/test.db");
QNetworkCookie cookieA = QNetworkCookie("foo", "bar");
// tomorrow rounded
cookieA.setExpirationDate(QDateTime(QDateTime::currentDateTimeUtc().addDays(1).date()));
const QList<QNetworkCookie> cookies = {cookieA, QNetworkCookie("foo2", "bar")};
CookieJar jar;
jar.setAllCookies(cookies);
QCOMPARE(cookies, jar.allCookies());
QVERIFY(jar.save(tmp.filePath("test.db")));
// ensure we are able to create a cookie jar in a non exisitning folder (mkdir)
QVERIFY(jar.save(nonexistingPath));
CookieJar jar2;
QVERIFY(jar2.restore(nonexistingPath));
// here we should have only cookieA as the second one was a session cookie
QCOMPARE(QList<QNetworkCookie>{cookieA}, jar2.allCookies());
}
};
QTEST_APPLESS_MAIN(TestCookies)
#include "testcookies.moc"