summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@qt.io>2021-06-02 13:45:56 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2021-06-28 05:47:09 +0000
commit3caa5f3e2a2ea8bc830acb3662f67339d4dc1ead (patch)
treeebc5a345eaec4abe213eade379c75a400ae2d22d
parentca08b89c133ab45b24f5663b6664e86bfe323f84 (diff)
Add 'testsupport' to cmake builds
This enables running more tests. Fix issues with tst_qquickwebengineviewgraphics. Change-Id: Ib223b4e723a7192c18202e8d5dd65d83872f3336 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> (cherry picked from commit 4e92dc14b86655154f70e8a1093cc9f3aae1604f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--CMakeLists.txt1
-rw-r--r--src/webenginequick/CMakeLists.txt13
-rw-r--r--src/webenginequick/configure.cmake2
-rw-r--r--src/webenginequick/testsupport/CMakeLists.txt17
-rw-r--r--src/webenginequick/testsupport/plugin.cpp1
-rw-r--r--tests/auto/quick/CMakeLists.txt4
-rw-r--r--tests/auto/quick/qmltests/CMakeLists.txt2
-rw-r--r--tests/auto/quick/qquickwebengineviewgraphics/CMakeLists.txt11
-rw-r--r--tests/auto/quick/qquickwebengineviewgraphics/tst_qquickwebengineviewgraphics.cpp10
9 files changed, 51 insertions, 10 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5e9b0a586..c54c76bac 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -38,6 +38,7 @@ qt_feature_module_begin(ONLY_EVALUATE_FEATURES)
set(__QtFeature_only_evaluate_features OFF)
include(configure.cmake)
include(src/core/api/configure.cmake)
+include(src/webenginequick/configure.cmake)
qt_feature_module_end(ONLY_EVALUATE_FEATURES)
if(NOT ${webEngineSupport})
diff --git a/src/webenginequick/CMakeLists.txt b/src/webenginequick/CMakeLists.txt
index 1362984dc..57ced1441 100644
--- a/src/webenginequick/CMakeLists.txt
+++ b/src/webenginequick/CMakeLists.txt
@@ -1,9 +1,12 @@
find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS Gui Qml Quick)
-find_package(Qt6 ${PROJECT_VERSION} CONFIG QUIET OPTIONAL_COMPONENTS PrintSupport WebChannel Positioning)
+find_package(Qt6 ${PROJECT_VERSION} CONFIG QUIET OPTIONAL_COMPONENTS PrintSupport WebChannel Positioning Test)
get_configure_mode(configureMode)
add_subdirectory(plugin)
+if(QT_FEATURE_webenginequick_testsupport)
+ add_subdirectory(testsupport)
+endif()
qt_internal_add_module(WebEngineQuick
${configureMode}
SOURCES
@@ -44,4 +47,12 @@ qt_internal_add_module(WebEngineQuick
Qt::Quick
Qt::WebEngineCore
)
+
+qt_internal_extend_target(WebEngineQuick CONDITION QT_FEATURE_webenginequick_testsupport
+ SOURCES
+ api/qquickwebenginetestsupport.cpp api/qquickwebenginetestsupport_p.h
+ LIBRARIES
+ Qt::TestPrivate
+)
+
make_install_only(WebEngineQuick)
diff --git a/src/webenginequick/configure.cmake b/src/webenginequick/configure.cmake
index 5f095ca51..19dded637 100644
--- a/src/webenginequick/configure.cmake
+++ b/src/webenginequick/configure.cmake
@@ -8,7 +8,7 @@ qt_feature("webenginequick-ui-delegates" PRIVATE
)
qt_feature("webenginequick-testsupport" PRIVATE
LABEL "Test Support"
- AUTODETECT FALSE
+ AUTODETECT QT_FEATURE_webengine_developer_build
)
qt_configure_add_summary_section(NAME "Qt WebEngineQuick")
qt_configure_add_summary_entry(ARGS "webenginequick-qml")
diff --git a/src/webenginequick/testsupport/CMakeLists.txt b/src/webenginequick/testsupport/CMakeLists.txt
new file mode 100644
index 000000000..57805a450
--- /dev/null
+++ b/src/webenginequick/testsupport/CMakeLists.txt
@@ -0,0 +1,17 @@
+qt_internal_add_qml_module(qtwebenginetestsupportplugin
+ URI "QtWebEngine.testsupport"
+ VERSION "${PROJECT_VERSION}"
+ CLASS_NAME QtWebEngineTestSupportPlugin
+ PLUGIN_TARGET qtwebenginetestsupportplugin
+ NO_GENERATE_PLUGIN_SOURCE
+ NO_PLUGIN_OPTIONAL
+ NO_GENERATE_QMLTYPES
+ INSTALL_SOURCE_QMLTYPES "plugins.qmltypes"
+ SOURCES
+ plugin.cpp
+ LIBRARIES
+ Qt::GuiPrivate
+ Qt::Qml
+ Qt::WebEngineQuickPrivate
+)
+make_install_only(qtwebenginetestsupportplugin)
diff --git a/src/webenginequick/testsupport/plugin.cpp b/src/webenginequick/testsupport/plugin.cpp
index 02e6d66c4..1880c2733 100644
--- a/src/webenginequick/testsupport/plugin.cpp
+++ b/src/webenginequick/testsupport/plugin.cpp
@@ -39,6 +39,7 @@
#include <QtQml>
+#include <QtQml/qqmlextensionplugin.h>
#include <QtWebEngineQuick/private/qquickwebenginetestsupport_p.h>
QT_BEGIN_NAMESPACE
diff --git a/tests/auto/quick/CMakeLists.txt b/tests/auto/quick/CMakeLists.txt
index 6fd767049..3ad3b37c8 100644
--- a/tests/auto/quick/CMakeLists.txt
+++ b/tests/auto/quick/CMakeLists.txt
@@ -7,6 +7,6 @@ if(NOT boot2qt)
add_subdirectory(qmltests)
add_subdirectory(qquickwebengineview)
endif()
-if(QT_FEATURE_webengine_testsupport)
-# add_subdirectory(qquickwebengineviewgraphics)
+if(QT_FEATURE_webenginequick_testsupport)
+ add_subdirectory(qquickwebengineviewgraphics)
endif()
diff --git a/tests/auto/quick/qmltests/CMakeLists.txt b/tests/auto/quick/qmltests/CMakeLists.txt
index 487d07dc8..56ba60ebb 100644
--- a/tests/auto/quick/qmltests/CMakeLists.txt
+++ b/tests/auto/quick/qmltests/CMakeLists.txt
@@ -55,7 +55,7 @@ if(QT_FEATURE_ssl)
list(APPEND testList tst_certificateError.qml)
endif()
-if(QT_FEATURE_webengine_testsupport)
+if(QT_FEATURE_webenginequick_testsupport)
list(APPEND testList
tst_inputMethod.qml
tst_javaScriptDialogs.qml
diff --git a/tests/auto/quick/qquickwebengineviewgraphics/CMakeLists.txt b/tests/auto/quick/qquickwebengineviewgraphics/CMakeLists.txt
new file mode 100644
index 000000000..c7e6bc925
--- /dev/null
+++ b/tests/auto/quick/qquickwebengineviewgraphics/CMakeLists.txt
@@ -0,0 +1,11 @@
+include(../../util/util.cmake)
+qt_internal_add_test(tst_qquickwebengineviewgraphics
+ SOURCES
+ tst_qquickwebengineviewgraphics.cpp
+ LIBRARIES
+ Qt::CorePrivate
+ Qt::WebEngineWidgets
+ Qt::WebEngineQuickPrivate
+ Qt::Test
+ Test::Util
+)
diff --git a/tests/auto/quick/qquickwebengineviewgraphics/tst_qquickwebengineviewgraphics.cpp b/tests/auto/quick/qquickwebengineviewgraphics/tst_qquickwebengineviewgraphics.cpp
index d04a88510..855b01653 100644
--- a/tests/auto/quick/qquickwebengineviewgraphics/tst_qquickwebengineviewgraphics.cpp
+++ b/tests/auto/quick/qquickwebengineviewgraphics/tst_qquickwebengineviewgraphics.cpp
@@ -26,15 +26,14 @@
**
****************************************************************************/
-#include "util.h"
-
+#include <quickutil.h>
#include <QtTest/QtTest>
#include <QQmlContext>
#include <QQuickView>
#include <QQuickItem>
#include <QPainter>
#include <QtWebEngineQuick/qtwebenginequickglobal.h>
-#include <private/qquickwebengineview_p.h>
+#include <QtWebEngineQuick/private/qquickwebengineview_p.h>
#include <map>
@@ -153,10 +152,11 @@ void tst_QQuickWebEngineViewGraphics::setHtml(const QString &html)
m_view->create();
QQuickWebEngineView *webEngineView = static_cast<QQuickWebEngineView *>(m_view->rootObject());
- webEngineView->setProperty("url", QUrl(QStringLiteral("data:text/html,%1").arg(htmlData)));
- QTRY_COMPARE_WITH_TIMEOUT(m_view->rootObject()->property("loading"), QVariant(false), 30000);
+ webEngineView->setUrl(QUrl(QStringLiteral("data:text/html,%1").arg(htmlData)));
+ QVERIFY(waitForLoadSucceeded(webEngineView));
}
static QByteArrayList params;
W_QTEST_MAIN(tst_QQuickWebEngineViewGraphics, params)
#include "tst_qquickwebengineviewgraphics.moc"
+#include "moc_quickutil.cpp"