1 /*
2    SPDX-FileCopyrightText: 2018-2021 Laurent Montel <montel@kde.org>
3 
4    SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6 
7 #pragma once
8 
9 #include <restapiabstractjob.h>
10 #include <restapimethod.h>
11 
12 #include <QNetworkRequest>
13 #include <QTest>
14 using namespace RocketChatRestApi;
verifyAuthentication(RestApiAbstractJob * job,QNetworkRequest & request)15 void verifyAuthentication(RestApiAbstractJob *job, QNetworkRequest &request)
16 {
17     const QString authToken = QStringLiteral("foo");
18     const QString userId = QStringLiteral("user");
19     job->setUserId(userId);
20     job->setAuthToken(authToken);
21     RestApiMethod method;
22     method.setServerUrl(QStringLiteral("http://www.kde.org"));
23     job->setRestApiMethod(&method);
24     request = job->request();
25     QCOMPARE(request.attribute(QNetworkRequest::HttpPipeliningAllowedAttribute).toBool(), true);
26     QCOMPARE(request.attribute(QNetworkRequest::Http2AllowedAttribute).toBool(), true);
27     QCOMPARE(request.rawHeader(QByteArrayLiteral("X-Auth-Token")), authToken.toLocal8Bit());
28     QCOMPARE(request.rawHeader(QByteArrayLiteral("X-User-Id")), userId.toLocal8Bit());
29 }
30 
verifyDefaultValue(RestApiAbstractJob * job)31 void verifyDefaultValue(RestApiAbstractJob *job)
32 {
33     QVERIFY(!job->restApiMethod());
34     QVERIFY(!job->networkAccessManager());
35     QVERIFY(!job->start());
36     QVERIFY(job->authToken().isEmpty());
37     QVERIFY(job->userId().isEmpty());
38     QVERIFY(!job->restApiLogger());
39 }
40 
41