aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2018-02-05 17:32:12 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2018-02-05 17:04:56 +0000
commitebc12dec06f9925eb02f2f4c0cbfde2c99427eb1 (patch)
treef361f2e88b20097c534a5e58cd005a6e2601609a /tests/auto
parentc916117a1ceaa5fa0f4e4aaf949072a1eeba3510 (diff)
Make clangdb autotest self-contained when using a mingw profile
Change-Id: I6807c55dd9115c9bb0be2aa4d5b7adf5c5e40853 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/blackbox/testdata-clangdb/project1/project.qbs10
-rw-r--r--tests/auto/blackbox/tst_clangdb.cpp7
2 files changed, 13 insertions, 4 deletions
diff --git a/tests/auto/blackbox/testdata-clangdb/project1/project.qbs b/tests/auto/blackbox/testdata-clangdb/project1/project.qbs
index 573105de6..4552deb40 100644
--- a/tests/auto/blackbox/testdata-clangdb/project1/project.qbs
+++ b/tests/auto/blackbox/testdata-clangdb/project1/project.qbs
@@ -9,11 +9,19 @@ Project {
Application {
Probe {
id: dummy
+ property bool isMingw: qbs.toolchain.contains("mingw")
+ property bool isMsvc: qbs.toolchain.contains("msvc")
property var buildEnv: cpp.buildEnv
configure: {
- if (buildEnv) {
+ if (!buildEnv)
+ return;
+ if (isMsvc) {
+ console.info("is msvc");
console.info("INCLUDE=" + buildEnv["INCLUDE"]);
console.info("LIB=" + buildEnv["LIB"]);
+ } else if (isMingw) {
+ console.info("is mingw");
+ console.info("PATH=" + buildEnv["PATH"]);
}
}
}
diff --git a/tests/auto/blackbox/tst_clangdb.cpp b/tests/auto/blackbox/tst_clangdb.cpp
index 566082211..6a4072dd8 100644
--- a/tests/auto/blackbox/tst_clangdb.cpp
+++ b/tests/auto/blackbox/tst_clangdb.cpp
@@ -109,17 +109,18 @@ void TestClangDb::ensureBuildTreeCreated()
QCOMPARE(runQbs(), 0);
QVERIFY(QFile::exists(buildDir));
- const SettingsPtr s = settings();
- qbs::Profile profile(profileName(), s.get());
- if (profile.value("qbs.toolchain").toStringList().contains("msvc")) {
+ if (m_qbsStdout.contains("is msvc") || m_qbsStdout.contains("is mingw")) {
sanitizeOutput(&m_qbsStdout);
for (const auto &line : m_qbsStdout.split('\n')) {
static const QByteArray includeEnv = "INCLUDE=";
static const QByteArray libEnv = "LIB=";
+ static const QByteArray pathEnv = "PATH=";
if (line.startsWith(includeEnv))
processEnvironment.insert("INCLUDE", line.mid(includeEnv.size()));
if (line.startsWith(libEnv))
processEnvironment.insert("LIB", line.mid(libEnv.size()));
+ if (line.startsWith(pathEnv))
+ processEnvironment.insert("PATH", line.mid(pathEnv.size()));
}
}
}