summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/corelib/language/testdata/moduleproperties.qbs7
-rw-r--r--src/lib/corelib/language/testdata/modules/dummy/dummy.qbs4
-rw-r--r--src/lib/corelib/language/tst_language.cpp4
3 files changed, 15 insertions, 0 deletions
diff --git a/src/lib/corelib/language/testdata/moduleproperties.qbs b/src/lib/corelib/language/testdata/moduleproperties.qbs
index 7b782751a..b74daf810 100644
--- a/src/lib/corelib/language/testdata/moduleproperties.qbs
+++ b/src/lib/corelib/language/testdata/moduleproperties.qbs
@@ -30,4 +30,11 @@ Project {
Depends { name: "dummy" }
dummy.listProp: ["x"]
}
+
+ Product {
+ name: "list_property_depending_on_overridden_property"
+ Depends { name: "dummy" }
+ dummy.listProp2: ["PRODUCT_STUFF"]
+ dummy.controllingProp: true
+ }
}
diff --git a/src/lib/corelib/language/testdata/modules/dummy/dummy.qbs b/src/lib/corelib/language/testdata/modules/dummy/dummy.qbs
index 9fdd73459..8a235555a 100644
--- a/src/lib/corelib/language/testdata/modules/dummy/dummy.qbs
+++ b/src/lib/corelib/language/testdata/modules/dummy/dummy.qbs
@@ -12,4 +12,8 @@ DummyBase {
property string zort: "zort in dummy"
property pathList includePaths
property stringList listProp: product.type.contains("blubb") ? ["123"] : ["456"]
+
+ property bool controllingProp: false
+ property stringList listProp2: controllingProp
+ ? ["DEFAULT_STUFF", "EXTRA_STUFF"] : ["DEFAULT_STUFF"]
}
diff --git a/src/lib/corelib/language/tst_language.cpp b/src/lib/corelib/language/tst_language.cpp
index d07af317a..b13404ad4 100644
--- a/src/lib/corelib/language/tst_language.cpp
+++ b/src/lib/corelib/language/tst_language.cpp
@@ -977,6 +977,9 @@ void TestLanguage::moduleProperties_data()
QTest::newRow("list_property_that_references_product")
<< "listProp"
<< (QStringList() << "x" << "123");
+ QTest::newRow("list_property_depending_on_overridden_property")
+ << "listProp2"
+ << (QStringList() << "PRODUCT_STUFF" << "DEFAULT_STUFF" << "EXTRA_STUFF");
QTest::newRow("cleanup") << QString() << QStringList();
}
@@ -994,6 +997,7 @@ void TestLanguage::moduleProperties()
QStringList valueStrings;
foreach (const QVariant &v, values)
valueStrings += v.toString();
+ QEXPECT_FAIL("list_property_depending_on_overridden_property", "QBS_845", Continue);
QCOMPARE(valueStrings, expectedValues);
}