Make autotest more resilient against network timeout

(cherry picked from commit 50be38737507f5c23b4d050e635a200024164a13)
This commit is contained in:
aavit 2011-05-03 13:32:23 +02:00 committed by Olivier Goffart
parent f55563e7df
commit 5a7409a423
3 changed files with 9 additions and 6 deletions

View File

@ -424,15 +424,17 @@ bool BaselineProtocol::requestBaselineChecksums(const QString &testFunction, Ima
it->testFunction = testFunction;
QByteArray block;
QDataStream ds(&block, QIODevice::ReadWrite);
QDataStream ds(&block, QIODevice::WriteOnly);
ds << *itemList;
if (!sendBlock(RequestBaselineChecksums, block))
return false;
Command cmd;
if (!receiveBlock(&cmd, &block))
QByteArray rcvBlock;
if (!receiveBlock(&cmd, &rcvBlock) || cmd != BaselineProtocol::Ack)
return false;
ds.device()->seek(0);
ds >> *itemList;
QDataStream rds(&rcvBlock, QIODevice::ReadOnly);
rds >> *itemList;
return true;
}

View File

@ -146,7 +146,7 @@ public:
enum Constant {
ProtocolVersion = 5,
ServerPort = 54129,
Timeout = 5000
Timeout = 15000
};
enum Command {

View File

@ -254,7 +254,8 @@ void tst_Lancelot::runTestSuite(GraphicsEngine engine, QImage::Format format)
if (baseline.status == ImageItem::BaselineNotFound) {
proto.submitNewBaseline(rendered, 0);
if (!proto.submitNewBaseline(rendered, 0))
QWARN("Failed to submit new baseline: " + proto.errorMessage().toLatin1());
QSKIP("Baseline not found; new baseline created.", SkipSingle);
}