summaryrefslogtreecommitdiffstats
path: root/tests/auto
diff options
context:
space:
mode:
authorOlivier Goffart <ogoffart@woboq.com>2014-08-10 14:11:26 +0200
committerOlivier Goffart (Woboq GmbH) <ogoffart@woboq.com>2015-02-05 14:27:59 +0000
commitd43d03529f7bc169776be161c2978856eefb0e93 (patch)
tree6a0d69842699351012a10d375467ea11a25c4bbc /tests/auto
parent9e6190cff3f78428eb4bedbb3f267f3d7a43f469 (diff)
QMetatype: Register the QMetaObject of a Q_ENUM or Q_FLAG
Change-Id: Id1343c3fb51d88a43d4d97e8859dbe2b0cfbea34 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
index 6e2b623a9f..c76892c24f 100644
--- a/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
+++ b/tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp
@@ -1835,12 +1835,17 @@ void tst_QMetaType::saveAndLoadCustom()
QCOMPARE(stream.status(), QDataStream::ReadPastEnd);
}
-struct MyGadget {
+class MyGadget {
Q_GADGET;
+public:
+ enum MyEnum { Val1, Val2, Val3 };
+ Q_ENUM(MyEnum)
};
Q_DECLARE_METATYPE(MyGadget);
Q_DECLARE_METATYPE(const QMetaObject *);
+Q_DECLARE_METATYPE(Qt::ScrollBarPolicy);
+Q_DECLARE_METATYPE(MyGadget::MyEnum);
void tst_QMetaType::metaObject_data()
{
@@ -1855,6 +1860,8 @@ void tst_QMetaType::metaObject_data()
QTest::newRow("int") << int(QMetaType::Int) << static_cast<const QMetaObject *>(0) << false << false;
QTest::newRow("QEasingCurve") << ::qMetaTypeId<QEasingCurve>() << &QEasingCurve::staticMetaObject << true << false;
QTest::newRow("MyGadget") << ::qMetaTypeId<MyGadget>() << &MyGadget::staticMetaObject << true << false;
+ QTest::newRow("MyEnum") << ::qMetaTypeId<MyGadget::MyEnum>() << &MyGadget::staticMetaObject << false << false;
+ QTest::newRow("Qt::ScrollBarPolicy") << ::qMetaTypeId<Qt::ScrollBarPolicy>() << &QObject::staticQtMetaObject << false << false;
}