diff options
author | David Faure <david.faure@kdab.com> | 2018-03-16 13:27:21 +0100 |
---|---|---|
committer | David Faure <david.faure@kdab.com> | 2018-03-17 08:38:29 +0000 |
commit | 8b6838347de2d065f96d7f1c519edaaf01701014 (patch) | |
tree | b25ead43a1c9dc7d935625fe503c515756b14962 /tests | |
parent | 23fd4f7171ce0d509f59f42a9881de53f85644e7 (diff) |
QNetworkReply: fix isFinished() for disabled replies
When network access is disabled, every QNAM request returns a
QDisabledNetworkReply instance, which emits error and finished
immediately. However isFinished() was still false, which could confuse
application code.
Change-Id: Ifd43c86364b11a9583a38fde536e6c09c109b55f
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp b/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp index bc2e2822cb..120b1c4b66 100644 --- a/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp +++ b/tests/auto/network/access/qnetworkaccessmanager/tst_qnetworkaccessmanager.cpp @@ -84,6 +84,15 @@ void tst_QNetworkAccessManager::networkAccessible() QNetworkAccessManager::NotAccessible); QCOMPARE(manager.networkAccessible(), QNetworkAccessManager::NotAccessible); + // When network is not accessible, all requests fail + QNetworkReply *reply = manager.get(QNetworkRequest(QUrl("http://www.example.org"))); + QSignalSpy finishedSpy(reply, &QNetworkReply::finished); + QSignalSpy errorSpy(reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error)); + QVERIFY(finishedSpy.wait()); + QCOMPARE(reply->isFinished(), true); + QCOMPARE(reply->errorString(), QStringLiteral("Network access is disabled.")); + QCOMPARE(errorSpy.count(), 1); + manager.setNetworkAccessible(QNetworkAccessManager::Accessible); QCOMPARE(spy.count(), expectedCount); |