aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@digia.com>2014-04-22 09:50:43 +0200
committerChristian Kandeler <christian.kandeler@digia.com>2014-04-22 11:16:57 +0200
commit50eb187c035000dd7c1e0614b1abac65abf34b99 (patch)
tree7dbb2c73705449104ef9366ed7034a3e492d0129
parentc9eb23a26d693da232f1ab96c23797f35ad16305 (diff)
Fuzzy tester: Print error message also for clean build failures.
This will help us find false positives (e.g. "disk full"). Change-Id: I5db9d333809f7067dc5dff81544e9e5f0206ee8c Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
-rw-r--r--tests/fuzzy-test/fuzzytester.cpp12
-rw-r--r--tests/fuzzy-test/fuzzytester.h2
2 files changed, 8 insertions, 6 deletions
diff --git a/tests/fuzzy-test/fuzzytester.cpp b/tests/fuzzy-test/fuzzytester.cpp
index d759c6a3d..fa6c6b8ad 100644
--- a/tests/fuzzy-test/fuzzytester.cpp
+++ b/tests/fuzzy-test/fuzzytester.cpp
@@ -78,9 +78,10 @@ void FuzzyTester::runTest(const QString &profile, const QString &startCommit)
if (success)
success = runQbs(defaultBuildDir(), QLatin1String("build"), &qbsError);
if (success) {
- if (!doCleanBuild()) {
+ if (!doCleanBuild(&qbsError)) {
const QString message = QString::fromLocal8Bit("An incremental build succeeded "
- "with a commit for which a clean build failed.");
+ "with a commit for which a clean build failed.\n"
+ "The qbs error message for the clean build was: '%1'").arg(qbsError);
throwIncrementalBuildError(message, buildSequence);
}
} else {
@@ -88,7 +89,8 @@ void FuzzyTester::runTest(const QString &profile, const QString &startCommit)
if (doCleanBuild()) {
const QString message = QString::fromLocal8Bit("An incremental build failed "
"with a commit for which a clean build succeeded.\n"
- "The qbs error message was: '%1'").arg(qbsError);
+ "The qbs error message for the incremental build was: '%1'")
+ .arg(qbsError);
throwIncrementalBuildError(message, buildSequence);
} else {
qDebug("Clean build also fails. Continuing.");
@@ -169,11 +171,11 @@ void FuzzyTester::removeDir(const QString &dirPath)
}
}
-bool FuzzyTester::doCleanBuild()
+bool FuzzyTester::doCleanBuild(QString *errorMessage)
{
const QString cleanBuildDir = "fuzzytest-verification-build";
removeDir(cleanBuildDir);
- return runQbs(cleanBuildDir, QLatin1String("build"));
+ return runQbs(cleanBuildDir, QLatin1String("build"), errorMessage);
}
void FuzzyTester::throwIncrementalBuildError(const QString &message,
diff --git a/tests/fuzzy-test/fuzzytester.h b/tests/fuzzy-test/fuzzytester.h
index 9934aa679..f8fff9100 100644
--- a/tests/fuzzy-test/fuzzytester.h
+++ b/tests/fuzzy-test/fuzzytester.h
@@ -63,7 +63,7 @@ private:
void runGit(const QStringList &arguments, QString *output = 0);
bool runQbs(const QString &buildDir, const QString &command, QString *errorOutput = 0);
void removeDir(const QString &dir);
- bool doCleanBuild();
+ bool doCleanBuild(QString *errorMessage = 0);
void throwIncrementalBuildError(const QString &message, const QStringList &commitSequence);
static QString defaultBuildDir();