File indexing completed on 2025-02-02 04:51:31

0001 /*
0002    SPDX-FileCopyrightText: 2018-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "searchmessagejobtest.h"
0008 #include "chat/searchmessagejob.h"
0009 #include "restapimethod.h"
0010 #include "ruqola_restapi_helper.h"
0011 QTEST_GUILESS_MAIN(searchMessageJobTest)
0012 using namespace RocketChatRestApi;
0013 searchMessageJobTest::searchMessageJobTest(QObject *parent)
0014     : QObject(parent)
0015 {
0016 }
0017 
0018 void searchMessageJobTest::shouldHaveDefaultValue()
0019 {
0020     SearchMessageJob job;
0021     verifyDefaultValue(&job);
0022     QVERIFY(job.requireHttpAuthentication());
0023     QVERIFY(job.searchText().isEmpty());
0024     QVERIFY(job.roomId().isEmpty());
0025     QCOMPARE(job.count(), -1);
0026     QVERIFY(!job.hasQueryParameterSupport());
0027     QVERIFY(!job.useRegularExpression());
0028     QVERIFY(!job.requireTwoFactorAuthentication());
0029 }
0030 
0031 void searchMessageJobTest::shouldGenerateRequest()
0032 {
0033     SearchMessageJob job;
0034     QNetworkRequest request = QNetworkRequest(QUrl());
0035     job.setRoomId(QStringLiteral("foo"));
0036     job.setSearchText(QStringLiteral("bla"));
0037     verifyAuthentication(&job, request);
0038     QCOMPARE(request.url(), QUrl(QStringLiteral("http://www.kde.org/api/v1/chat.search?roomId=foo&searchText=bla")));
0039 }
0040 
0041 void searchMessageJobTest::shouldGenerateRequestWithLimit()
0042 {
0043     SearchMessageJob job;
0044     QNetworkRequest request = QNetworkRequest(QUrl());
0045     job.setRoomId(QStringLiteral("foo"));
0046     job.setSearchText(QStringLiteral("bla"));
0047     job.setCount(5);
0048     verifyAuthentication(&job, request);
0049     QCOMPARE(request.url(), QUrl(QStringLiteral("http://www.kde.org/api/v1/chat.search?roomId=foo&searchText=bla&count=5")));
0050 }
0051 
0052 #include "moc_searchmessagejobtest.cpp"