diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2017-08-11 12:45:24 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2017-08-14 09:07:57 +0000 |
commit | a590bcb89cf42017206991107111df95c5612dfc (patch) | |
tree | 8d6109f3474ac80e1c0a812f1496ce713f9011a0 /tests | |
parent | c83ae7c3c01e17e00eff9a8aaf08807702578227 (diff) |
Fix build data rescuing when multiplexing
The code assumed that we could only multiplex over profiles, which is no
longer true.
Change-Id: Ia0a522b701d3ed983d484d0683e1417ab2adeb94
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'tests')
4 files changed, 28 insertions, 0 deletions
diff --git a/tests/auto/blackbox/testdata/change-tracking-and-multiplexing/change-tracking-and-multiplexing.qbs b/tests/auto/blackbox/testdata/change-tracking-and-multiplexing/change-tracking-and-multiplexing.qbs new file mode 100644 index 000000000..78bd8abda --- /dev/null +++ b/tests/auto/blackbox/testdata/change-tracking-and-multiplexing/change-tracking-and-multiplexing.qbs @@ -0,0 +1,13 @@ +import qbs + +StaticLibrary { + name: "l" + + Depends { condition: qbs.targetOS.contains("darwin"); name: "bundle" } + Properties { condition: qbs.targetOS.contains("darwin"); bundle.isBundle: false } + + multiplexByQbsProperties: ["buildVariants"] + qbs.buildVariants: ["debug", "release"] + Depends { name: "cpp" } + files: ["lib.cpp"] +} diff --git a/tests/auto/blackbox/testdata/change-tracking-and-multiplexing/lib.cpp b/tests/auto/blackbox/testdata/change-tracking-and-multiplexing/lib.cpp new file mode 100644 index 000000000..9a6145659 --- /dev/null +++ b/tests/auto/blackbox/testdata/change-tracking-and-multiplexing/lib.cpp @@ -0,0 +1 @@ +void l() {} diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp index 2018259b1..f26f33d53 100644 --- a/tests/auto/blackbox/tst_blackbox.cpp +++ b/tests/auto/blackbox/tst_blackbox.cpp @@ -598,6 +598,19 @@ void TestBlackbox::changeInImportedFile() QVERIFY2(!m_qbsStdout.contains("output"), m_qbsStdout.constData()); } +void TestBlackbox::changeTrackingAndMultiplexing() +{ + QDir::setCurrent(testDataDir + "/change-tracking-and-multiplexing"); + QCOMPARE(runQbs(QStringList("modules.cpp.staticLibraryPrefix:prefix1")), 0); + QCOMPARE(m_qbsStdout.count("compiling lib.cpp"), 2); + QCOMPARE(m_qbsStdout.count("creating prefix1l"), 2); + QCOMPARE(runQbs(QbsRunParameters("resolve", + QStringList("modules.cpp.staticLibraryPrefix:prefix2"))), 0); + QCOMPARE(runQbs(), 0); + QCOMPARE(m_qbsStdout.count("compiling lib.cpp"), 0); + QCOMPARE(m_qbsStdout.count("creating prefix2l"), 2); +} + static QJsonObject findByName(const QJsonArray &objects, const QString &name) { for (const QJsonValue v : objects) { diff --git a/tests/auto/blackbox/tst_blackbox.h b/tests/auto/blackbox/tst_blackbox.h index 1337644fb..1426046cf 100644 --- a/tests/auto/blackbox/tst_blackbox.h +++ b/tests/auto/blackbox/tst_blackbox.h @@ -52,6 +52,7 @@ private slots: void changedFiles(); void changeInDisabledProduct(); void changeInImportedFile(); + void changeTrackingAndMultiplexing(); void checkProjectFilePath(); void clean(); void cli(); |