aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/qmltyperegistrar
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/qml/qmltyperegistrar')
-rw-r--r--tests/auto/qml/qmltyperegistrar/CMakeLists.txt2
-rw-r--r--tests/auto/qml/qmltyperegistrar/VersionZero/CMakeLists.txt20
-rw-r--r--tests/auto/qml/qmltyperegistrar/VersionZero/version_zero_type.h17
-rw-r--r--tests/auto/qml/qmltyperegistrar/tst_qmltyperegistrar.cpp10
-rw-r--r--tests/auto/qml/qmltyperegistrar/tst_qmltyperegistrar.h1
5 files changed, 50 insertions, 0 deletions
diff --git a/tests/auto/qml/qmltyperegistrar/CMakeLists.txt b/tests/auto/qml/qmltyperegistrar/CMakeLists.txt
index 5f6f8e83b2..d1ad5858a5 100644
--- a/tests/auto/qml/qmltyperegistrar/CMakeLists.txt
+++ b/tests/auto/qml/qmltyperegistrar/CMakeLists.txt
@@ -74,3 +74,5 @@ qt_add_qml_module(tst-qmltyperegistrar-with-dashes
foo.cpp foo.h
)
qt_autogen_tools_initial_setup(tst-qmltyperegistrar-with-dashesplugin)
+
+add_subdirectory(VersionZero)
diff --git a/tests/auto/qml/qmltyperegistrar/VersionZero/CMakeLists.txt b/tests/auto/qml/qmltyperegistrar/VersionZero/CMakeLists.txt
new file mode 100644
index 0000000000..09b9cea69a
--- /dev/null
+++ b/tests/auto/qml/qmltyperegistrar/VersionZero/CMakeLists.txt
@@ -0,0 +1,20 @@
+qt_add_library(tst_qmltyperegistrar_major_version_zero)
+qt_autogen_tools_initial_setup(tst_qmltyperegistrar_major_version_zero)
+target_link_libraries(tst_qmltyperegistrar_major_version_zero PRIVATE Qt::Core Qt::Qml)
+qt_enable_autogen_tool(tst_qmltyperegistrar_major_version_zero "moc" ON)
+qt_add_qml_module(tst_qmltyperegistrar_major_version_zero
+ URI VersionZero
+ VERSION 0.1
+ SOURCES
+ version_zero_type.h
+)
+qt_autogen_tools_initial_setup(tst_qmltyperegistrar_major_version_zero)
+
+# Make sure the backing library is found on Windows next to the executable
+set_target_properties(
+ tst_qmltyperegistrar_major_version_zero
+ PROPERTIES
+ RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/..
+ LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/..
+ ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/..
+)
diff --git a/tests/auto/qml/qmltyperegistrar/VersionZero/version_zero_type.h b/tests/auto/qml/qmltyperegistrar/VersionZero/version_zero_type.h
new file mode 100644
index 0000000000..a3277e6ab3
--- /dev/null
+++ b/tests/auto/qml/qmltyperegistrar/VersionZero/version_zero_type.h
@@ -0,0 +1,17 @@
+// Copyright (C) 2022 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
+
+#ifndef VERSION_ZERO_TYPE_H
+#define VERSION_ZERO_TYPE_H
+
+#include <QtQml/qqml.h>
+
+class TypeInModuleMajorVersionZero : public QObject
+{
+ Q_OBJECT
+ QML_ELEMENT
+public:
+ TypeInModuleMajorVersionZero(QObject *parent = nullptr) : QObject(parent) {}
+};
+
+#endif // VERSION_ZERO_TYPE_H
diff --git a/tests/auto/qml/qmltyperegistrar/tst_qmltyperegistrar.cpp b/tests/auto/qml/qmltyperegistrar/tst_qmltyperegistrar.cpp
index 3fc746552e..68a21d8db8 100644
--- a/tests/auto/qml/qmltyperegistrar/tst_qmltyperegistrar.cpp
+++ b/tests/auto/qml/qmltyperegistrar/tst_qmltyperegistrar.cpp
@@ -396,4 +396,14 @@ void tst_qmltyperegistrar::foreignRevisionedProperty()
}
#endif
+void tst_qmltyperegistrar::typeInModuleMajorVersionZero()
+{
+ QQmlEngine engine;
+ QQmlComponent c(&engine);
+ c.setData(QStringLiteral("import VersionZero\n"
+ "TypeInModuleMajorVersionZero {}\n").toUtf8(),
+ QUrl(QTest::currentDataTag()));
+ QVERIFY2(c.isReady(), qPrintable(c.errorString()));
+}
+
QTEST_MAIN(tst_qmltyperegistrar)
diff --git a/tests/auto/qml/qmltyperegistrar/tst_qmltyperegistrar.h b/tests/auto/qml/qmltyperegistrar/tst_qmltyperegistrar.h
index 385d3b6666..f2ccaba618 100644
--- a/tests/auto/qml/qmltyperegistrar/tst_qmltyperegistrar.h
+++ b/tests/auto/qml/qmltyperegistrar/tst_qmltyperegistrar.h
@@ -532,6 +532,7 @@ private slots:
void addRemoveVersion_data();
void addRemoveVersion();
+ void typeInModuleMajorVersionZero();
private:
QByteArray qmltypesData;