aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFabian Kosmale <fabian.kosmale@qt.io>2026-08-25 09:24:40 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2026-09-17 11:43:24 +0000
commit9758f457b3ee8c83db62d7729529d63e78ece916 (patch)
tree5c449d662f8c2e7efd4bec8607278f2330d01c72
parent729690ce06c906cbf96c837c147db85dd0bba531 (diff)
qml: Test alias-to-alias resolve across objects
Task-number: QTBUG-149446 Change-Id: I8ab49b9d2023f13f1584119b59ad3281587d5b7b Reviewed-by: Sami Shalayel <sami.shalayel@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 4e047a044b746745ea7967a4827403475cd82df8) (cherry picked from commit ee3721b70b08f02799ca7e60b7ae936f3e2db1fa) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 20cdebfbb8aae443786f5d0f905fbc92dc2b6bcc)
-rw-r--r--tests/auto/qml/qqmllanguage/data/aliasToLocalAliasOrdering.qml16
-rw-r--r--tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp15
2 files changed, 31 insertions, 0 deletions
diff --git a/tests/auto/qml/qqmllanguage/data/aliasToLocalAliasOrdering.qml b/tests/auto/qml/qqmllanguage/data/aliasToLocalAliasOrdering.qml
new file mode 100644
index 0000000000..2e7c2ef403
--- /dev/null
+++ b/tests/auto/qml/qqmllanguage/data/aliasToLocalAliasOrdering.qml
@@ -0,0 +1,16 @@
+import Test 1.0
+
+MyContainer {
+ id: root
+
+ property alias background: backgroundItem
+ property alias navigation: mainItem.navigation
+
+ MyContainer {
+ id: mainItem
+ property alias navigation: navCtrl
+
+ MyContainer { id: navCtrl; objectName: "theNav" }
+ MyContainer { id: backgroundItem; objectName: "theBg" }
+ }
+}
diff --git a/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp b/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp
index 2f46061708..dfcc35e33d 100644
--- a/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp
+++ b/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp
@@ -535,6 +535,7 @@ private slots:
void aliasToGroupedProperty();
void aliasesAndDefaultProperty();
void removeBindingFromAliasToObject();
+ void aliasToLocalAliasOrdering();
void propertyCycle();
void urlWithFragment();
@@ -10196,6 +10197,20 @@ void tst_qqmllanguage::removeBindingFromAliasToObject()
QCOMPARE(o->objectName(), "boom"_L1);
}
+void tst_qqmllanguage::aliasToLocalAliasOrdering()
+{
+ QQmlEngine engine;
+ QQmlComponent c(&engine, testFileUrl("aliasToLocalAliasOrdering.qml"));
+
+ QVERIFY2(c.isReady(), qPrintable(c.errorString()));
+ QScopedPointer<QObject> o(c.create());
+ QVERIFY(!o.isNull());
+
+ QObject *nav = qvariant_cast<QObject *>(o->property("navigation"));
+ QVERIFY(nav);
+ QCOMPARE(nav->objectName(), "theNav"_L1);
+}
+
void tst_qqmllanguage::urlWithFragment()
{
QQmlEngine engine;