diff options
author | Shane Kearns <shane.kearns@accenture.com> | 2011-05-25 13:46:01 (GMT) |
---|---|---|
committer | Shane Kearns <shane.kearns@accenture.com> | 2011-05-25 14:36:30 (GMT) |
commit | a7cf6e27c9e31833991d61685d4dc5b8b5f777b7 (patch) | |
tree | 5a8d3f41a27d8eaf1cb1f7176f75f10b06f5666f /tests/auto/qhostinfo/tst_qhostinfo.cpp | |
parent | e0bc5834ce26f91e60d8ca839f8a80ffd6f11c90 (diff) | |
download | Qt-a7cf6e27c9e31833991d61685d4dc5b8b5f777b7.zip Qt-a7cf6e27c9e31833991d61685d4dc5b8b5f777b7.tar.gz Qt-a7cf6e27c9e31833991d61685d4dc5b8b5f777b7.tar.bz2 |
Update bearer startup code in network autotests
The bearer startup code I added to some of the network autotests to
ensure the network was up before testing caused test failures on some
linux configurations due to there being no default network defined.
I've changed it to follow these steps:
1. update the configuration list & wait for update completed signal
- due to the polling engines not having any config defined on the first
run before the initial poll happens
2. check default configuration is valid before attempting to start it
3a. for valid configuration, start it and wait for started as before
3b. for invalid configuration, fail if bearer is mandatory, otherwise ignore
- on symbian bearer use is "mandatory", on desktop platforms it is optional
Reviewed-by: Markus Goetz
Diffstat (limited to 'tests/auto/qhostinfo/tst_qhostinfo.cpp')
-rw-r--r-- | tests/auto/qhostinfo/tst_qhostinfo.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/tests/auto/qhostinfo/tst_qhostinfo.cpp b/tests/auto/qhostinfo/tst_qhostinfo.cpp index 93c08cd..2fa5e76 100644 --- a/tests/auto/qhostinfo/tst_qhostinfo.cpp +++ b/tests/auto/qhostinfo/tst_qhostinfo.cpp @@ -197,13 +197,19 @@ tst_QHostInfo::~tst_QHostInfo() void tst_QHostInfo::initTestCase() { #ifndef QT_NO_BEARERMANAGEMENT - //start the default network netConfMan = new QNetworkConfigurationManager(this); + netConfMan->updateConfigurations(); + connect(netConfMan, SIGNAL(updateCompleted()), &QTestEventLoop::instance(), SLOT(exitLoop())); + QTestEventLoop::instance().enterLoop(10); networkConfiguration = netConfMan->defaultConfiguration(); - networkSession.reset(new QNetworkSession(networkConfiguration)); - if (!networkSession->isOpen()) { - networkSession->open(); - QVERIFY(networkSession->waitForOpened(30000)); + if (networkConfiguration.isValid()) { + networkSession.reset(new QNetworkSession(networkConfiguration)); + if (!networkSession->isOpen()) { + networkSession->open(); + QVERIFY(networkSession->waitForOpened(30000)); + } + } else { + QVERIFY(!(netConfMan->capabilities() & QNetworkConfigurationManager::NetworkSessionRequired)); } #endif |