diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2016-08-09 14:44:15 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2016-08-10 07:58:52 +0000 |
commit | a18bf67cd75d26d5c0fd3d4c5b59991d991bc5dd (patch) | |
tree | bbb7c3bcddc014f9d922ef17601ae674a133f542 | |
parent | fabfd53ea5e103b85e93b133cf0896dd6499d4e1 (diff) |
Add XFAILing autotest for newly discovered bug
Task-number: QBS-1005
Change-Id: Id875b2c4656b9e264da77bb6e6b69168dc9493e4
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
4 files changed, 47 insertions, 0 deletions
diff --git a/src/lib/corelib/language/testdata/modulepropertiesingroups.qbs b/src/lib/corelib/language/testdata/modulepropertiesingroups.qbs new file mode 100644 index 000000000..6bfbf42d3 --- /dev/null +++ b/src/lib/corelib/language/testdata/modulepropertiesingroups.qbs @@ -0,0 +1,13 @@ +import qbs 1.0 + +Project { + Product { + name: "grouptest" + Depends { name: "dummyqt.core" } + Group { + name: "thegroup" + files: ["Banana"] + dummyqt.core.zort: "X" + } + } +} diff --git a/src/lib/corelib/language/testdata/modules/dummyqt/core/dummycore.qbs b/src/lib/corelib/language/testdata/modules/dummyqt/core/dummycore.qbs index 2a9a9ce7d..e87bb27ff 100644 --- a/src/lib/corelib/language/testdata/modules/dummyqt/core/dummycore.qbs +++ b/src/lib/corelib/language/testdata/modules/dummyqt/core/dummycore.qbs @@ -13,4 +13,5 @@ Module { Depends { name: "dummy" } dummy.defines: ["QT_CORE"] dummy.rpaths: ["/opt/qt/lib"] + dummy.cFlags: [zort] } diff --git a/src/lib/corelib/language/tst_language.cpp b/src/lib/corelib/language/tst_language.cpp index 600c5d232..46c7383ad 100644 --- a/src/lib/corelib/language/tst_language.cpp +++ b/src/lib/corelib/language/tst_language.cpp @@ -1108,6 +1108,38 @@ void TestLanguage::moduleProperties() QCOMPARE(valueStrings, expectedValues); } +void TestLanguage::modulePropertiesInGroups() +{ + defaultParameters.setProjectFilePath(testProject("modulepropertiesingroups.qbs")); + bool exceptionCaught = false; + try { + TopLevelProjectPtr project = loader->loadProject(defaultParameters); + QVERIFY(project); + const QHash<QString, ResolvedProductPtr> products = productsFromProject(project); + const ResolvedProductPtr product = products.value("grouptest"); + QVERIFY(product); + GroupConstPtr group; + foreach (const GroupConstPtr &g, product->groups) { + if (g->name == "thegroup") { + group = g; + break; + } + } + QVERIFY(group); + QVariantList values = PropertyFinder().propertyValues(group->properties->value(), + "dummy", "cFlags"); + QStringList valueStrings; + foreach (const QVariant &v, values) + valueStrings += v.toString(); + QEXPECT_FAIL(0, "QBS-1005", Continue); + QCOMPARE(valueStrings, QStringList("X")); + } catch (const ErrorInfo &e) { + exceptionCaught = true; + qDebug() << e.toString(); + } + QCOMPARE(exceptionCaught, false); +} + void TestLanguage::moduleScope() { class IntPropertyFinder diff --git a/src/lib/corelib/language/tst_language.h b/src/lib/corelib/language/tst_language.h index 081afea05..820f28c4d 100644 --- a/src/lib/corelib/language/tst_language.h +++ b/src/lib/corelib/language/tst_language.h @@ -97,6 +97,7 @@ private slots: void jsImportUsedInMultipleScopes(); void moduleProperties_data(); void moduleProperties(); + void modulePropertiesInGroups(); void moduleScope(); void modules_data(); void modules(); |