aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAssam Boudjelthia <assam.boudjelthia@qt.io>2022-02-16 13:08:49 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2022-03-02 17:14:35 +0000
commit76d1196c2c2fae92818eda037b243b765ae2b36a (patch)
tree0538bc6cc772161a920c3197ac5f1aef829fe5eb
parentc52d876d915d9cefb5a3e144ff21007e6eaab7d1 (diff)
Android: various test fixes
2nd round of test failures fixes for Android. Mostly resource bundling related issues still. Task-number: QTBUG-97056 Change-Id: I2fac0710a7b5528fcef4480babd0cbf749e488b3 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 9bdfea7f1f1ffe16c7a1140b09c94b9d72d24f18) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--tests/auto/cmake/CMakeLists.txt4
-rw-r--r--tests/auto/cmake/empty_qmldir/CMakeLists.txt5
-rw-r--r--tests/auto/qml/qmlbasicapp/tst_qmlbasicapp.cpp17
-rw-r--r--tests/auto/qml/qqmlcomponent/data/jsmodule/module.mjs3
-rw-r--r--tests/auto/quickcontrols2/customization/dummy.qml5
-rw-r--r--tests/auto/quickcontrols2/styleimportscompiletimeqmlonly/dummy.qml3
-rw-r--r--tests/auto/quickdialogs/qquickfiledialogimpl/dummy.qml5
-rw-r--r--tests/auto/quickdialogs/qquickfolderdialogimpl/dummy.qml6
-rw-r--r--tests/auto/quickdialogs/qquickmessagedialogimpl/dummy.qml4
9 files changed, 47 insertions, 5 deletions
diff --git a/tests/auto/cmake/CMakeLists.txt b/tests/auto/cmake/CMakeLists.txt
index 1d75a0bdba..4ea17fb0eb 100644
--- a/tests/auto/cmake/CMakeLists.txt
+++ b/tests/auto/cmake/CMakeLists.txt
@@ -65,7 +65,9 @@ if(TARGET Qt::Qml)
_qt_internal_test_expect_pass(test_plugins)
endif()
_qt_internal_test_expect_pass(empty_qmldir)
- _qt_internal_test_expect_pass(qmlquery)
+ If(NOT ANDROID) # QML only project cannot run on Android with C++ enty point
+ _qt_internal_test_expect_pass(qmlquery)
+ endif()
endif()
if(TARGET Qt::Quick)
diff --git a/tests/auto/cmake/empty_qmldir/CMakeLists.txt b/tests/auto/cmake/empty_qmldir/CMakeLists.txt
index 432e6e99da..259adc2610 100644
--- a/tests/auto/cmake/empty_qmldir/CMakeLists.txt
+++ b/tests/auto/cmake/empty_qmldir/CMakeLists.txt
@@ -14,6 +14,11 @@ endif()
qt_add_executable(empty_qmldir_test main.cpp)
target_link_libraries(empty_qmldir_test PRIVATE Qt6::Test)
+if(ANDROID)
+ # Tests link to Gui by default beacuse it's needed for Android (QTBUG-83997) when
+ # using qt_internal_add_test() but not here where qt_add_executable() is used.
+ target_link_libraries(empty_qmldir_test PRIVATE Qt6::Gui)
+endif()
qt_add_qml_module(empty_qmldir_test
URI Third
diff --git a/tests/auto/qml/qmlbasicapp/tst_qmlbasicapp.cpp b/tests/auto/qml/qmlbasicapp/tst_qmlbasicapp.cpp
index 2fd7ef634b..a6c6e4accd 100644
--- a/tests/auto/qml/qmlbasicapp/tst_qmlbasicapp.cpp
+++ b/tests/auto/qml/qmlbasicapp/tst_qmlbasicapp.cpp
@@ -44,6 +44,9 @@ private slots:
void tst_basicapp::loadComponent()
{
QQmlEngine engine;
+#ifdef Q_OS_ANDROID
+ engine.addImportPath(":/");
+#endif
QQmlComponent c(&engine, QStringLiteral("qrc:/BasicApp/main.qml"));
QVERIFY2(c.isReady(), qPrintable(c.errorString()));
QScopedPointer o(c.create());
@@ -83,6 +86,9 @@ void tst_basicapp::resourceFiles()
void tst_basicapp::fileSystemFiles()
{
+#ifdef Q_OS_ANDROID
+ QSKIP("This test is not valid for Android, because the files can exist only as resources.");
+#endif
const QString basedir = QCoreApplication::applicationDirPath();
QVERIFY(QFile::exists(basedir + QStringLiteral("/BasicApp/main.qml")));
QVERIFY(QFile::exists(basedir + QStringLiteral("/BasicApp/qmldir")));
@@ -99,8 +105,13 @@ void tst_basicapp::fileSystemFiles()
void tst_basicapp::qmldirContents()
{
+#ifdef Q_OS_ANDROID
+ const QString basedir = QStringLiteral(":"); // Use qrc resource path on Android
+#else
+ const QString basedir = QCoreApplication::applicationDirPath();
+#endif
{
- QFile qmldir(QCoreApplication::applicationDirPath() + "/BasicApp/qmldir");
+ QFile qmldir(basedir + "/BasicApp/qmldir");
QVERIFY(qmldir.open(QIODevice::ReadOnly));
const QByteArray contents = qmldir.readAll();
QVERIFY(contents.contains("module BasicApp"));
@@ -115,7 +126,7 @@ void tst_basicapp::qmldirContents()
}
{
- QFile qmldir(QCoreApplication::applicationDirPath() + "/TimeExample/qmldir");
+ QFile qmldir(basedir + "/TimeExample/qmldir");
QVERIFY(qmldir.open(QIODevice::ReadOnly));
const QByteArray contents = qmldir.readAll();
QVERIFY(contents.contains("module TimeExample"));
@@ -132,7 +143,7 @@ void tst_basicapp::qmldirContents()
}
{
- QFile qmldir(QCoreApplication::applicationDirPath() + "/BasicExtension/qmldir");
+ QFile qmldir(basedir + "/BasicExtension/qmldir");
QVERIFY(qmldir.open(QIODevice::ReadOnly));
const QByteArray contents = qmldir.readAll();
QVERIFY(contents.contains("More 1.0 More.ui.qml"));
diff --git a/tests/auto/qml/qqmlcomponent/data/jsmodule/module.mjs b/tests/auto/qml/qqmlcomponent/data/jsmodule/module.mjs
index 3dd3507d45..9175ba0a67 100644
--- a/tests/auto/qml/qqmlcomponent/data/jsmodule/module.mjs
+++ b/tests/auto/qml/qqmlcomponent/data/jsmodule/module.mjs
@@ -1,5 +1,6 @@
export function withProp(root) {
- const component = Qt.createComponent("data/jsmodule/Dynamic.qml");
+ const prefix = Qt.platform.os == "android" ? "qrc:" : "";
+ const component = Qt.createComponent(prefix + "data/jsmodule/Dynamic.qml");
const el = component.createObject(root, { value: 42 });
return el.value;
}
diff --git a/tests/auto/quickcontrols2/customization/dummy.qml b/tests/auto/quickcontrols2/customization/dummy.qml
new file mode 100644
index 0000000000..138b24f6e2
--- /dev/null
+++ b/tests/auto/quickcontrols2/customization/dummy.qml
@@ -0,0 +1,5 @@
+import QtQuick
+import QtQuick.Window
+import QtQuick.Controls
+
+QtObject {}
diff --git a/tests/auto/quickcontrols2/styleimportscompiletimeqmlonly/dummy.qml b/tests/auto/quickcontrols2/styleimportscompiletimeqmlonly/dummy.qml
new file mode 100644
index 0000000000..10c188956c
--- /dev/null
+++ b/tests/auto/quickcontrols2/styleimportscompiletimeqmlonly/dummy.qml
@@ -0,0 +1,3 @@
+import QtQuick.Controls.Basic
+
+QtObject {}
diff --git a/tests/auto/quickdialogs/qquickfiledialogimpl/dummy.qml b/tests/auto/quickdialogs/qquickfiledialogimpl/dummy.qml
new file mode 100644
index 0000000000..cffae81fbd
--- /dev/null
+++ b/tests/auto/quickdialogs/qquickfiledialogimpl/dummy.qml
@@ -0,0 +1,5 @@
+import QtQuick.Controls
+import QtQuick.Layouts
+import Qt.labs.folderlistmodel
+
+QtObject {}
diff --git a/tests/auto/quickdialogs/qquickfolderdialogimpl/dummy.qml b/tests/auto/quickdialogs/qquickfolderdialogimpl/dummy.qml
new file mode 100644
index 0000000000..d5bb0b6bb5
--- /dev/null
+++ b/tests/auto/quickdialogs/qquickfolderdialogimpl/dummy.qml
@@ -0,0 +1,6 @@
+import QtQuick
+import QtQuick.Controls
+import QtQuick.Layouts
+import Qt.labs.folderlistmodel
+
+QtObject {}
diff --git a/tests/auto/quickdialogs/qquickmessagedialogimpl/dummy.qml b/tests/auto/quickdialogs/qquickmessagedialogimpl/dummy.qml
new file mode 100644
index 0000000000..f7df04e6fc
--- /dev/null
+++ b/tests/auto/quickdialogs/qquickmessagedialogimpl/dummy.qml
@@ -0,0 +1,4 @@
+import QtQuick
+import QtQuick.Layouts
+
+QtObject {}