summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@digia.com>2014-03-06 16:15:29 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-03-10 20:41:35 +0100
commite9a93e888da7a5cdabc2d5027d0f0532f41f25e7 (patch)
tree07a230db6bc19350245df51fe5d18a9abb59293a /tests
parentb7f013bf1919486dab56a4436a17a3878341a1d5 (diff)
Increase timeout in tst_NetworkSelfTest.
Try to fix frequently failing test: FAIL! : tst_NetworkSelfTest::ftpProxyServer() Failed to receive data in step 32: timeout tst_networkselftest.cpp(230) : failure location on Windows. Introduce timeout constant, add message. Change-Id: I709f0b34cd1cfe5d3c64cf61ccb7907bd616bc54 Reviewed-by: Peter Hartmann <phartmann@blackberry.com> Reviewed-by: Richard J. Moore <rich@kde.org>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/other/networkselftest/tst_networkselftest.cpp21
1 files changed, 16 insertions, 5 deletions
diff --git a/tests/auto/other/networkselftest/tst_networkselftest.cpp b/tests/auto/other/networkselftest/tst_networkselftest.cpp
index 108ec466c9..11f726dcd9 100644
--- a/tests/auto/other/networkselftest/tst_networkselftest.cpp
+++ b/tests/auto/other/networkselftest/tst_networkselftest.cpp
@@ -170,7 +170,9 @@ static QString prettyByteArray(const QByteArray &array)
return result;
}
-static bool doSocketRead(QTcpSocket *socket, int minBytesAvailable, int timeout = 4000)
+enum { defaultReadTimeoutMS = 4000 };
+
+static bool doSocketRead(QTcpSocket *socket, int minBytesAvailable, int timeout = defaultReadTimeoutMS)
{
QElapsedTimer timer;
timer.start();
@@ -185,6 +187,15 @@ static bool doSocketRead(QTcpSocket *socket, int minBytesAvailable, int timeout
}
}
+static QByteArray msgDoSocketReadFailed(const QString &host, quint16 port,
+ int step, int minBytesAvailable)
+{
+ return "Failed to receive "
+ + QByteArray::number(minBytesAvailable) + " bytes from "
+ + host.toLatin1() + ':' + QByteArray::number(port)
+ + " in step " + QByteArray::number(step) + ": timeout";
+}
+
static bool doSocketFlush(QTcpSocket *socket, int timeout = 4000)
{
#ifndef QT_NO_SSL
@@ -226,8 +237,8 @@ static void netChat(int port, const QList<Chat> &chat)
switch (it->type) {
case Chat::Expect: {
qDebug() << i << "Expecting" << prettyByteArray(it->data);
- if (!doSocketRead(&socket, it->data.length()))
- QFAIL(QString("Failed to receive data in step %1: timeout").arg(i).toLocal8Bit());
+ if (!doSocketRead(&socket, it->data.length(), 3 * defaultReadTimeoutMS))
+ QFAIL(msgDoSocketReadFailed(QtNetworkSettings::serverName(), port, i, it->data.length()));
// pop that many bytes off the socket
QByteArray received = socket.read(it->data.length());
@@ -245,7 +256,7 @@ static void netChat(int port, const QList<Chat> &chat)
while (true) {
// scan the buffer until we have our string
if (!doSocketRead(&socket, it->data.length()))
- QFAIL(QString("Failed to receive data in step %1: timeout").arg(i).toLocal8Bit());
+ QFAIL(msgDoSocketReadFailed(QtNetworkSettings::serverName(), port, i, it->data.length()));
QByteArray buffer;
buffer.resize(socket.bytesAvailable());
@@ -266,7 +277,7 @@ static void netChat(int port, const QList<Chat> &chat)
case Chat::SkipBytes: {
qDebug() << i << "Skipping" << it->value << "bytes";
if (!doSocketRead(&socket, it->value))
- QFAIL(QString("Failed to receive data in step %1: timeout").arg(i).toLocal8Bit());
+ QFAIL(msgDoSocketReadFailed(QtNetworkSettings::serverName(), port, i, it->value));
// now discard the bytes
QByteArray buffer = socket.read(it->value);