diff options
author | Christian Kandeler <christian.kandeler@digia.com> | 2014-07-16 17:58:06 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@digia.com> | 2014-07-16 18:20:45 +0200 |
commit | bedf128a9ac1d6ac25835d1c5d68229766656457 (patch) | |
tree | 1033a6104659cef407c8647cc98008950a977a22 /tests/auto/blackbox | |
parent | 53a95b6f16788c6c248bb695b9ce9ad5e3a031ab (diff) |
Take product type changes into account when change tracking.
This property is special: We cannot just test for relevance by
checking whether it is used in any transformers, because changing
it can cause new transformers to get pulled in.
Task-number: QBS-650
Change-Id: If18495b47c7238fc8a1256146f4e935ce9655b18
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'tests/auto/blackbox')
-rw-r--r-- | tests/auto/blackbox/testdata/type-change/main.cpp | 1 | ||||
-rw-r--r-- | tests/auto/blackbox/testdata/type-change/project.qbs | 7 | ||||
-rw-r--r-- | tests/auto/blackbox/tst_blackbox.cpp | 17 | ||||
-rw-r--r-- | tests/auto/blackbox/tst_blackbox.h | 1 |
4 files changed, 26 insertions, 0 deletions
diff --git a/tests/auto/blackbox/testdata/type-change/main.cpp b/tests/auto/blackbox/testdata/type-change/main.cpp new file mode 100644 index 000000000..237c8ce18 --- /dev/null +++ b/tests/auto/blackbox/testdata/type-change/main.cpp @@ -0,0 +1 @@ +int main() {} diff --git a/tests/auto/blackbox/testdata/type-change/project.qbs b/tests/auto/blackbox/testdata/type-change/project.qbs new file mode 100644 index 000000000..7661aa305 --- /dev/null +++ b/tests/auto/blackbox/testdata/type-change/project.qbs @@ -0,0 +1,7 @@ +import qbs + +Product { + files: "main.cpp" + Depends { name: "cpp" } + // type: "application" +} diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp index e4ae5537f..7ec9d7378 100644 --- a/tests/auto/blackbox/tst_blackbox.cpp +++ b/tests/auto/blackbox/tst_blackbox.cpp @@ -503,6 +503,23 @@ void TestBlackbox::resolve_project_dry_run() QVERIFY2(!QFile::exists(buildGraphPath), qPrintable(buildGraphPath)); } +void TestBlackbox::typeChange() +{ + QDir::setCurrent(testDataDir + "/type-change"); + QCOMPARE(runQbs(), 0); + QVERIFY2(!m_qbsStdout.contains("compiling"), m_qbsStdout.constData()); + waitForNewTimestamp(); + QFile projectFile("project.qbs"); + QVERIFY2(projectFile.open(QIODevice::ReadWrite), qPrintable(projectFile.errorString())); + QByteArray content = projectFile.readAll(); + content.replace("//", ""); + projectFile.resize(0); + projectFile.write(content); + projectFile.close(); + QCOMPARE(runQbs(), 0); + QVERIFY2(m_qbsStdout.contains("compiling"), m_qbsStdout.constData()); +} + void TestBlackbox::usingsAsSoleInputsNonMultiplexed() { QDir::setCurrent(testDataDir + QLatin1String("/usings-as-sole-inputs-non-multiplexed")); diff --git a/tests/auto/blackbox/tst_blackbox.h b/tests/auto/blackbox/tst_blackbox.h index 658653bc9..aa8310a28 100644 --- a/tests/auto/blackbox/tst_blackbox.h +++ b/tests/auto/blackbox/tst_blackbox.h @@ -140,6 +140,7 @@ private slots: void resolve_project(); void resolve_project_dry_run_data(); void resolve_project_dry_run(); + void typeChange(); void usingsAsSoleInputsNonMultiplexed(); void clean(); void exportSimple(); |