diff options
author | Aaron Kennedy <aaron.kennedy@nokia.com> | 2011-07-26 10:44:16 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-07-26 06:29:54 +0200 |
commit | f5eb5ad7a0b5bbfc40070a65d7dfc84c53ef9414 (patch) | |
tree | b0227206c0241296b4f8b656da4e5b37813a1c24 /tests | |
parent | 2b449b0c5ea8b49f1ef0f9c06a7d0ff5eb2a59c4 (diff) |
Autotest
Task-number: QTBUG-16878
Change-Id: I0d074c13b32670697f4811060ddf4edbdf6c6451
Reviewed-on: http://codereview.qt.nokia.com/2133
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Diffstat (limited to 'tests')
4 files changed, 25 insertions, 0 deletions
diff --git a/tests/auto/declarative/qdeclarativelanguage/data/registrationOrder.qml b/tests/auto/declarative/qdeclarativelanguage/data/registrationOrder.qml new file mode 100644 index 0000000000..14217ad521 --- /dev/null +++ b/tests/auto/declarative/qdeclarativelanguage/data/registrationOrder.qml @@ -0,0 +1,4 @@ +import Test.VersionOrder 2.0 + +MyQmlObject { +} diff --git a/tests/auto/declarative/qdeclarativelanguage/testtypes.cpp b/tests/auto/declarative/qdeclarativelanguage/testtypes.cpp index 20f07191eb..9c9eb04bf1 100644 --- a/tests/auto/declarative/qdeclarativelanguage/testtypes.cpp +++ b/tests/auto/declarative/qdeclarativelanguage/testtypes.cpp @@ -74,6 +74,9 @@ void registerTypes() qmlRegisterType<MyQmlObject>("Test.Version",1,0,"MyQmlObject"); qmlRegisterType<MyTypeObject>("Test.Version",1,0,"MyTypeObject"); qmlRegisterType<MyTypeObject>("Test.Version",2,0,"MyTypeObject"); + + qmlRegisterType<MyVersion2Class>("Test.VersionOrder", 2,0, "MyQmlObject"); + qmlRegisterType<MyQmlObject>("Test.VersionOrder", 1,0, "MyQmlObject"); } QVariant myCustomVariantTypeConverter(const QString &data) diff --git a/tests/auto/declarative/qdeclarativelanguage/testtypes.h b/tests/auto/declarative/qdeclarativelanguage/testtypes.h index 527f670e13..c11bc33eab 100644 --- a/tests/auto/declarative/qdeclarativelanguage/testtypes.h +++ b/tests/auto/declarative/qdeclarativelanguage/testtypes.h @@ -794,6 +794,11 @@ protected: qreal m_p5; }; +class MyVersion2Class : public QObject +{ + Q_OBJECT +}; + QML_DECLARE_TYPE(MyRevisionedBaseClassRegistered) QML_DECLARE_TYPE(MyRevisionedBaseClassUnregistered) QML_DECLARE_TYPE(MyRevisionedClass) diff --git a/tests/auto/declarative/qdeclarativelanguage/tst_qdeclarativelanguage.cpp b/tests/auto/declarative/qdeclarativelanguage/tst_qdeclarativelanguage.cpp index b8f1899e12..328b7c8da1 100644 --- a/tests/auto/declarative/qdeclarativelanguage/tst_qdeclarativelanguage.cpp +++ b/tests/auto/declarative/qdeclarativelanguage/tst_qdeclarativelanguage.cpp @@ -136,6 +136,7 @@ private slots: void reservedWords(); void inlineAssignmentsOverrideBindings(); void nestedComponentRoots(); + void registrationOrder(); void basicRemote_data(); void basicRemote(); @@ -2056,6 +2057,18 @@ void tst_qdeclarativelanguage::propertyInit() } } +// Test that registration order doesn't break type availability +// QTBUG-16878 +void tst_qdeclarativelanguage::registrationOrder() +{ + QDeclarativeComponent component(&engine, TEST_FILE("registrationOrder.qml")); + + QObject *o = component.create(); + QVERIFY(o != 0); + QVERIFY(o->metaObject() == &MyVersion2Class::staticMetaObject); + delete o; +} + QTEST_MAIN(tst_qdeclarativelanguage) #include "tst_qdeclarativelanguage.moc" |