diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2018-05-28 10:54:24 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2018-05-28 10:39:36 +0000 |
commit | 07a0b3ddbb9ed39901f23ab814f856f6e2bb191a (patch) | |
tree | daec5a4a92457d852ab45028338989f850b58fa5 /tests | |
parent | 59644542542202907c6635ae0c05bda975fa383e (diff) |
Fix the type of the cpp.cLanguageVersion property
This was forgotten in 2bda52aa3d. Also added autotest.
Change-Id: Iba8c7c7aa6629f321017315b03964ce20809ac23
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'tests')
7 files changed, 57 insertions, 0 deletions
diff --git a/tests/auto/blackbox/testdata/maximum-c-language-version/main.c b/tests/auto/blackbox/testdata/maximum-c-language-version/main.c new file mode 100644 index 000000000..76e819701 --- /dev/null +++ b/tests/auto/blackbox/testdata/maximum-c-language-version/main.c @@ -0,0 +1 @@ +int main() { return 0; } diff --git a/tests/auto/blackbox/testdata/maximum-c-language-version/maximum-c-language-version.qbs b/tests/auto/blackbox/testdata/maximum-c-language-version/maximum-c-language-version.qbs new file mode 100644 index 000000000..2ac47b66a --- /dev/null +++ b/tests/auto/blackbox/testdata/maximum-c-language-version/maximum-c-language-version.qbs @@ -0,0 +1,22 @@ +import qbs + +CppApplication { + name: "app" + property bool enableNewestModule: true + + Probe { + id: osProbe + property stringList toolchain: qbs.toolchain + configure: { + if (toolchain.contains("msvc")) + console.info("is msvc"); + found = true; + } + } + + Depends { name: "oldmodule" } + Depends { name: "newermodule" } + Depends { name: "newestmodule"; condition: enableNewestModule } + + files: "main.c" +} diff --git a/tests/auto/blackbox/testdata/maximum-c-language-version/modules/newermodule/newermodule.qbs b/tests/auto/blackbox/testdata/maximum-c-language-version/modules/newermodule/newermodule.qbs new file mode 100644 index 000000000..4dd343b3b --- /dev/null +++ b/tests/auto/blackbox/testdata/maximum-c-language-version/modules/newermodule/newermodule.qbs @@ -0,0 +1,6 @@ +import qbs + +Module { + Depends { name: "cpp" } + cpp.cLanguageVersion: "c99" +} diff --git a/tests/auto/blackbox/testdata/maximum-c-language-version/modules/newestmodule/newestmodule.qbs b/tests/auto/blackbox/testdata/maximum-c-language-version/modules/newestmodule/newestmodule.qbs new file mode 100644 index 000000000..f8316a35e --- /dev/null +++ b/tests/auto/blackbox/testdata/maximum-c-language-version/modules/newestmodule/newestmodule.qbs @@ -0,0 +1,6 @@ +import qbs + +Module { + Depends { name: "cpp" } + cpp.cLanguageVersion: "c11" +} diff --git a/tests/auto/blackbox/testdata/maximum-c-language-version/modules/oldmodule/oldmodule.qbs b/tests/auto/blackbox/testdata/maximum-c-language-version/modules/oldmodule/oldmodule.qbs new file mode 100644 index 000000000..a753b3e3e --- /dev/null +++ b/tests/auto/blackbox/testdata/maximum-c-language-version/modules/oldmodule/oldmodule.qbs @@ -0,0 +1,6 @@ +import qbs + +Module { + Depends { name: "cpp" } + cpp.cLanguageVersion: "c90" +} diff --git a/tests/auto/blackbox/tst_blackbox.cpp b/tests/auto/blackbox/tst_blackbox.cpp index f0c731446..a833bd264 100644 --- a/tests/auto/blackbox/tst_blackbox.cpp +++ b/tests/auto/blackbox/tst_blackbox.cpp @@ -5570,6 +5570,21 @@ void TestBlackbox::makefileGenerator() QVERIFY(!QFile::exists(relativeExecutableFilePath("the app"))); } +void TestBlackbox::maximumCLanguageVersion() +{ + QDir::setCurrent(testDataDir + "/maximum-c-language-version"); + QCOMPARE(runQbs(QbsRunParameters("resolve", + QStringList("products.app.enableNewestModule:true"))), 0); + if (m_qbsStdout.contains("is msvc")) + QSKIP("MSVC has no support for setting the C language version."); + QCOMPARE(runQbs(QStringList({"--command-echo-mode", "command-line", "-n"})), 0); + QVERIFY2(m_qbsStdout.contains("c11") || m_qbsStdout.contains("c1x"), m_qbsStdout.constData()); + QCOMPARE(runQbs(QbsRunParameters("resolve", + QStringList("products.app.enableNewestModule:false"))), 0); + QCOMPARE(runQbs(QStringList({"--command-echo-mode", "command-line", "-n"})), 0); + QVERIFY2(m_qbsStdout.contains("c99"), m_qbsStdout.constData()); +} + void TestBlackbox::maximumCxxLanguageVersion() { QDir::setCurrent(testDataDir + "/maximum-cxx-language-version"); diff --git a/tests/auto/blackbox/tst_blackbox.h b/tests/auto/blackbox/tst_blackbox.h index f55158be5..fb95e723a 100644 --- a/tests/auto/blackbox/tst_blackbox.h +++ b/tests/auto/blackbox/tst_blackbox.h @@ -157,6 +157,7 @@ private slots: void loadableModule(); void localDeployment(); void makefileGenerator(); + void maximumCLanguageVersion(); void maximumCxxLanguageVersion(); void minimumSystemVersion(); void minimumSystemVersion_data(); |