diff options
Diffstat (limited to 'tests/auto/blackbox/tst_blackboxbase.cpp')
-rw-r--r-- | tests/auto/blackbox/tst_blackboxbase.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/tests/auto/blackbox/tst_blackboxbase.cpp b/tests/auto/blackbox/tst_blackboxbase.cpp index 0e383c831..ed0b90b55 100644 --- a/tests/auto/blackbox/tst_blackboxbase.cpp +++ b/tests/auto/blackbox/tst_blackboxbase.cpp @@ -96,14 +96,16 @@ int TestBlackboxBase::runQbs(const QbsRunParameters ¶ms) process.setWorkingDirectory(params.workingDir); process.setProcessEnvironment(params.environment); process.start(qbsExecutableFilePath, args); + int exitCode = 0; if (!process.waitForStarted() || !process.waitForFinished(testTimeoutInMsecs()) || process.exitStatus() != QProcess::NormalExit) { - m_qbsStderr = process.readAllStandardError(); if (!params.expectCrash) { QTest::qFail("qbs did not run correctly", __FILE__, __LINE__); qDebug("%s", qPrintable(process.errorString())); } - return -1; + exitCode = -1; + } else { + exitCode = process.exitCode(); } m_qbsStderr = process.readAllStandardError(); @@ -111,14 +113,14 @@ int TestBlackboxBase::runQbs(const QbsRunParameters ¶ms) sanitizeOutput(&m_qbsStderr); sanitizeOutput(&m_qbsStdout); const bool shouldLog = (process.exitStatus() != QProcess::NormalExit - || process.exitCode() != 0) && !params.expectFailure; + || exitCode != 0) && !params.expectFailure; if (!m_qbsStderr.isEmpty() && (shouldLog || qEnvironmentVariableIsSet("QBS_AUTOTEST_ALWAYS_LOG_STDERR"))) qDebug("%s", m_qbsStderr.constData()); if (!m_qbsStdout.isEmpty() && (shouldLog || qEnvironmentVariableIsSet("QBS_AUTOTEST_ALWAYS_LOG_STDOUT"))) qDebug("%s", m_qbsStdout.constData()); - return process.exitCode(); + return exitCode; } /*! |