summaryrefslogtreecommitdiffstats
path: root/tests/auto/network
diff options
context:
space:
mode:
authorJuha Vuolle <juha.vuolle@qt.io>2023-08-08 11:51:36 +0300
committerJuha Vuolle <juha.vuolle@qt.io>2023-12-08 15:53:35 +0200
commit669a48e5ae6bcc051b71a0de09dd489275fb74aa (patch)
tree6344eb654d82aff1379de6386f0e28ee108790cc /tests/auto/network
parent090991123dd82796fe956e4153bc26ace22280ca (diff)
Functions for setting request transfer timeouts
Added to both QNetworkRequestFactory and QRestAccessManager Task-number: QTBUG-114717 Change-Id: Ibca55bba548a034a0da7ea60550642c150b63dc2 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> Reviewed-by: Marc Mutz <marc.mutz@qt.io> Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'tests/auto/network')
-rw-r--r--tests/auto/network/access/qnetworkrequestfactory/tst_qnetworkrequestfactory.cpp18
-rw-r--r--tests/auto/network/access/qrestaccessmanager/httptestserver.cpp1
-rw-r--r--tests/auto/network/access/qrestaccessmanager/tst_qrestaccessmanager.cpp16
3 files changed, 35 insertions, 0 deletions
diff --git a/tests/auto/network/access/qnetworkrequestfactory/tst_qnetworkrequestfactory.cpp b/tests/auto/network/access/qnetworkrequestfactory/tst_qnetworkrequestfactory.cpp
index 2413065920..332c09cdf9 100644
--- a/tests/auto/network/access/qnetworkrequestfactory/tst_qnetworkrequestfactory.cpp
+++ b/tests/auto/network/access/qnetworkrequestfactory/tst_qnetworkrequestfactory.cpp
@@ -10,6 +10,7 @@
#include <QtCore/qurl.h>
using namespace Qt::StringLiterals;
+using namespace std::chrono_literals;
class tst_QNetworkRequestFactory : public QObject
{
@@ -23,6 +24,7 @@ private Q_SLOTS:
void headers();
void bearerToken();
void operators();
+ void timeout();
private:
const QUrl url1{u"http://foo.io"_s};
@@ -310,5 +312,21 @@ void tst_QNetworkRequestFactory::operators()
QCOMPARE(factory5.baseUrl(), url1);
}
+void tst_QNetworkRequestFactory::timeout()
+{
+ constexpr auto defaultTimeout = 0ms;
+ constexpr auto timeout = 150ms;
+
+ QNetworkRequestFactory factory;
+ QNetworkRequest request = factory.request();
+ QCOMPARE(factory.transferTimeout(), defaultTimeout);
+ QCOMPARE(request.transferTimeoutAsDuration(), defaultTimeout);
+
+ factory.setTransferTimeout(timeout);
+ request = factory.request();
+ QCOMPARE(factory.transferTimeout(), timeout);
+ QCOMPARE(request.transferTimeoutAsDuration(), timeout);
+}
+
QTEST_MAIN(tst_QNetworkRequestFactory)
#include "tst_qnetworkrequestfactory.moc"
diff --git a/tests/auto/network/access/qrestaccessmanager/httptestserver.cpp b/tests/auto/network/access/qrestaccessmanager/httptestserver.cpp
index 6e2f82a217..ac58834812 100644
--- a/tests/auto/network/access/qrestaccessmanager/httptestserver.cpp
+++ b/tests/auto/network/access/qrestaccessmanager/httptestserver.cpp
@@ -6,6 +6,7 @@
#include <QtNetwork/qtcpsocket.h>
#include <QtCore/qcoreapplication.h>
+
#include <private/qlocale_p.h>
using namespace Qt::StringLiterals;
diff --git a/tests/auto/network/access/qrestaccessmanager/tst_qrestaccessmanager.cpp b/tests/auto/network/access/qrestaccessmanager/tst_qrestaccessmanager.cpp
index 9834818ad7..960984be1c 100644
--- a/tests/auto/network/access/qrestaccessmanager/tst_qrestaccessmanager.cpp
+++ b/tests/auto/network/access/qrestaccessmanager/tst_qrestaccessmanager.cpp
@@ -19,6 +19,7 @@
#include <QtCore/qstringconverter.h>
using namespace Qt::StringLiterals;
+using namespace std::chrono_literals;
class tst_QRestAccessManager : public QObject
{
@@ -40,6 +41,7 @@ private slots:
void text();
void download();
void upload();
+ void timeout();
private:
void memberHandler(QRestReply *reply);
@@ -893,5 +895,19 @@ void tst_QRestAccessManager::upload()
QCOMPARE(last.at(0).toLongLong(), expectedData.size());
}
+void tst_QRestAccessManager::timeout()
+{
+ constexpr auto defaultTimeout = 0ms;
+ constexpr auto timeout = 150ms;
+
+ QRestAccessManager manager;
+ QCOMPARE(manager.transferTimeout(), defaultTimeout);
+ QCOMPARE(manager.networkAccessManager()->transferTimeoutAsDuration(), defaultTimeout);
+
+ manager.setTransferTimeout(timeout);
+ QCOMPARE(manager.transferTimeout(), timeout);
+ QCOMPARE(manager.networkAccessManager()->transferTimeoutAsDuration(), timeout);
+}
+
QTEST_MAIN(tst_QRestAccessManager)
#include "tst_qrestaccessmanager.moc"