aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto
diff options
context:
space:
mode:
authorMaximilian Goldstein <max.goldstein@qt.io>2021-02-05 15:14:42 +0100
committerMaximilian Goldstein <max.goldstein@qt.io>2021-02-05 17:19:54 +0100
commit33f3d70c74564fb1e296537e14d1e0bddb4bb944 (patch)
tree3def672f5eb1fb2b004d59eed4ec37423f56c4ae /tests/auto
parent4938984f9a779192264757a06e6ca555fc8f5e91 (diff)
qqmlproxymetaobject: Support invoking methods and slots
Previously this just failed silently and returned garbage data. Change-Id: Ia8b72836aa0ccfd50fd18b0f813c2bf3a00801c5 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/qml/qqmllanguage/data/foreignExtended.qml3
-rw-r--r--tests/auto/qml/qqmllanguage/testtypes.h3
-rw-r--r--tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp2
3 files changed, 8 insertions, 0 deletions
diff --git a/tests/auto/qml/qqmllanguage/data/foreignExtended.qml b/tests/auto/qml/qqmllanguage/data/foreignExtended.qml
index 182d60fd02..4863e0d567 100644
--- a/tests/auto/qml/qqmllanguage/data/foreignExtended.qml
+++ b/tests/auto/qml/qqmllanguage/data/foreignExtended.qml
@@ -12,6 +12,9 @@ QtObject {
property int extendedBase: extended.base
+ property int extendedInvokable: extended.invokable()
+ property int extendedSlot: extended.slot()
+
property int extendedExtension: extended.extension
property int foreignExtendedExtension: foreignExtended.extension
diff --git a/tests/auto/qml/qqmllanguage/testtypes.h b/tests/auto/qml/qqmllanguage/testtypes.h
index 77f09a232c..74cd608471 100644
--- a/tests/auto/qml/qqmllanguage/testtypes.h
+++ b/tests/auto/qml/qqmllanguage/testtypes.h
@@ -1468,6 +1468,9 @@ class Extension : public QObject
public:
Extension(QObject *parent = nullptr) : QObject(parent) {}
int extension() const { return 42; }
+ Q_INVOKABLE int invokable() { return 123; }
+public slots:
+ int slot() { return 456; }
};
class Extended : public QObject
diff --git a/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp b/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp
index 5e40387ceb..ff76e4510e 100644
--- a/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp
+++ b/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp
@@ -5497,6 +5497,8 @@ void tst_qqmllanguage::extendedForeignTypes()
QCOMPARE(o->property("foreignExtendedExtension").toInt(), 42);
QCOMPARE(o->property("foreignObjectName").toString(), QLatin1String("foreign"));
QCOMPARE(o->property("foreignExtendedObjectName").toString(), QLatin1String("foreignExtended"));
+ QCOMPARE(o->property("extendedInvokable").toInt(), 123);
+ QCOMPARE(o->property("extendedSlot").toInt(), 456);
}
void tst_qqmllanguage::foreignTypeSingletons() {