summaryrefslogtreecommitdiffstats
path: root/tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@qt.io>2017-01-02 12:47:31 +0100
committerSimon Hausmann <simon.hausmann@qt.io>2017-01-02 21:03:29 +0000
commit3986be6d98a09fa7854744253864a9e57486bbcf (patch)
treea75acd9596f74322136aa5f7805abbc09be6a6f8 /tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp
parent47784b4352351f042d1e3b61e7151cdcc7c0bac1 (diff)
Improve reliability of network bearer tests
May of the tests initiate a scan / update of the network configuration and expect the API to deliver exactly one update. This turns out to be a race condition as the update may be emitted multiple times, as QNetworkConfigurationManagerPrivate::updateConfigurations() is called via posted events (queued signal emissions) from the bearer thread, and so after creating the spy we may receive an update from _before_ and end up emitting the signal multiple times. Task-number: QTQAINFRA-1040 Change-Id: I931e2907f0cb86d48b4ab1a8795d75206035ea11 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp')
-rw-r--r--tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp b/tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp
index 4ae511cf54..138a0859cd 100644
--- a/tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp
+++ b/tests/auto/network/bearer/qnetworksession/test/tst_qnetworksession.cpp
@@ -106,7 +106,7 @@ void tst_QNetworkSession::initTestCase()
QSignalSpy spy(&manager, SIGNAL(updateCompleted()));
manager.updateConfigurations();
- QTRY_VERIFY_WITH_TIMEOUT(spy.count() == 1, TestTimeOut);
+ QTRY_VERIFY_WITH_TIMEOUT(spy.count() >= 1, TestTimeOut);
lackeyDir = QFINDTESTDATA("lackey");
QVERIFY2(!lackeyDir.isEmpty(), qPrintable(
@@ -1007,7 +1007,7 @@ QNetworkConfiguration suitableConfiguration(QString bearerType, QNetworkConfigur
QSignalSpy updateSpy(&mgr, SIGNAL(updateCompleted()));
mgr.updateConfigurations();
- QTRY_NOOP(updateSpy.count() == 1);
+ QTRY_NOOP(updateSpy.count() >= 1);
if (updateSpy.count() != 1) {
qDebug("tst_QNetworkSession::suitableConfiguration() failure: unable to update configurations");
return QNetworkConfiguration();
@@ -1052,7 +1052,7 @@ void updateConfigurations()
QNetworkConfigurationManager mgr;
QSignalSpy updateSpy(&mgr, SIGNAL(updateCompleted()));
mgr.updateConfigurations();
- QTRY_NOOP(updateSpy.count() == 1);
+ QTRY_NOOP(updateSpy.count() >= 1);
}
// A convenience-function: updates and prints all available confiurations and their states