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>bb10
parent
47784b4352
commit
3986be6d98
|
|
@ -114,7 +114,7 @@ void tst_QNetworkConfiguration::comparison()
|
|||
|
||||
QSignalSpy spy(&manager, SIGNAL(updateCompleted()));
|
||||
manager.updateConfigurations(); //initiate scans
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() == 1, TestTimeOut); //wait for scan to complete
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() >= 1, TestTimeOut); //wait for scan to complete
|
||||
|
||||
QList<QNetworkConfiguration> configs = manager.allConfigurations(QNetworkConfiguration::Discovered);
|
||||
QVERIFY(configs.count());
|
||||
|
|
@ -161,7 +161,7 @@ void tst_QNetworkConfiguration::isRoamingAvailable()
|
|||
//force update to get maximum list
|
||||
QSignalSpy spy(&manager, SIGNAL(updateCompleted()));
|
||||
manager.updateConfigurations(); //initiate scans
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() == 1, TestTimeOut); //wait for scan to complete
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() >= 1, TestTimeOut); //wait for scan to complete
|
||||
|
||||
foreach(QNetworkConfiguration c, configs)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@ void tst_QNetworkConfigurationManager::allConfigurations()
|
|||
|
||||
QSignalSpy spy(&manager, SIGNAL(updateCompleted()));
|
||||
manager.updateConfigurations(); //initiate scans
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() == 1, TestTimeOut); //wait for scan to complete
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() >= 1, TestTimeOut); //wait for scan to complete
|
||||
|
||||
QList<QNetworkConfiguration> configs = manager.allConfigurations();
|
||||
|
||||
|
|
@ -145,7 +145,7 @@ void tst_QNetworkConfigurationManager::defaultConfiguration()
|
|||
QNetworkConfigurationManager manager;
|
||||
QSignalSpy spy(&manager, SIGNAL(updateCompleted()));
|
||||
manager.updateConfigurations(); //initiate scans
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() == 1, TestTimeOut); //wait for scan to complete
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() >= 1, TestTimeOut); //wait for scan to complete
|
||||
|
||||
QList<QNetworkConfiguration> configs = manager.allConfigurations();
|
||||
QNetworkConfiguration defaultConfig = manager.defaultConfiguration();
|
||||
|
|
@ -175,7 +175,7 @@ void tst_QNetworkConfigurationManager::configurationFromIdentifier()
|
|||
//force an update to get maximum number of configs
|
||||
QSignalSpy spy(&manager, SIGNAL(updateCompleted()));
|
||||
manager.updateConfigurations(); //initiate scans
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() == 1, TestTimeOut); //wait for scan to complete
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() >= 1, TestTimeOut); //wait for scan to complete
|
||||
|
||||
QList<QNetworkConfiguration> configs = manager.allConfigurations();
|
||||
|
||||
|
|
@ -203,7 +203,7 @@ protected:
|
|||
preScanConfigs = manager.allConfigurations();
|
||||
QSignalSpy spy(&manager, SIGNAL(updateCompleted()));
|
||||
manager.updateConfigurations(); //initiate scans
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() == 1, TestTimeOut); //wait for scan to complete
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() >= 1, TestTimeOut); //wait for scan to complete
|
||||
configs = manager.allConfigurations();
|
||||
}
|
||||
public:
|
||||
|
|
@ -229,7 +229,7 @@ void tst_QNetworkConfigurationManager::usedInThread()
|
|||
QList<QNetworkConfiguration> preScanConfigs = manager.allConfigurations();
|
||||
QSignalSpy spy(&manager, SIGNAL(updateCompleted()));
|
||||
manager.updateConfigurations(); //initiate scans
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() == 1, TestTimeOut); //wait for scan to complete
|
||||
QTRY_VERIFY_WITH_TIMEOUT(spy.count() >= 1, TestTimeOut); //wait for scan to complete
|
||||
QList<QNetworkConfiguration> configs = manager.allConfigurations();
|
||||
QCOMPARE(thread.configs, configs);
|
||||
//Don't compare pre scan configs, because these may be cached and therefore give different results
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
Loading…
Reference in New Issue