diff options
Diffstat (limited to 'src/qmltest')
-rw-r--r-- | src/qmltest/CMakeLists.txt | 5 | ||||
-rw-r--r-- | src/qmltest/SignalSpy.qml | 9 | ||||
-rw-r--r-- | src/qmltest/TestCase.qml | 2 | ||||
-rw-r--r-- | src/qmltest/doc/snippets/overview.cmake | 2 | ||||
-rw-r--r-- | src/qmltest/doc/src/qtquicktest-qmltypes.qdoc | 2 | ||||
-rw-r--r-- | src/qmltest/quicktest.cpp | 14 | ||||
-rw-r--r-- | src/qmltest/quicktestevent.cpp | 4 | ||||
-rw-r--r-- | src/qmltest/quicktestresult.cpp | 3 | ||||
-rw-r--r-- | src/qmltest/quicktestutil.cpp | 2 |
9 files changed, 27 insertions, 16 deletions
diff --git a/src/qmltest/CMakeLists.txt b/src/qmltest/CMakeLists.txt index b823c48d82..7f55ebc8b0 100644 --- a/src/qmltest/CMakeLists.txt +++ b/src/qmltest/CMakeLists.txt @@ -2,9 +2,6 @@ ## QuickTest Module: ##################################################################### -set_source_files_properties(TestCase.qml SignalSpy.qml PROPERTIES - QT_QML_SOURCE_VERSION "1.0;6.0" -) set_source_files_properties(testlogger.js PROPERTIES QT_QML_SKIP_QMLDIR_ENTRY TRUE ) @@ -36,12 +33,12 @@ qt_internal_add_qml_module(QuickTest Qt::CorePrivate Qt::Gui Qt::QmlPrivate - Qt::Quick Qt::QuickPrivate Qt::TestPrivate PUBLIC_LIBRARIES Qt::Core Qt::Test + Qt::Quick PRIVATE_MODULE_INTERFACE Qt::TestPrivate ) diff --git a/src/qmltest/SignalSpy.qml b/src/qmltest/SignalSpy.qml index 52ed83e261..7257e4f3f3 100644 --- a/src/qmltest/SignalSpy.qml +++ b/src/qmltest/SignalSpy.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the test suite of the Qt Toolkit. @@ -218,9 +218,14 @@ Item { /*! \internal */ property bool qtest_valid:false /*! \internal */ + property bool qtest_reentrancy_guard: false /*! \internal */ function qtest_update() { + if (qtest_reentrancy_guard) + return; + qtest_reentrancy_guard = true; + if (qtest_prevTarget != null) { var prevHandlerName = qtest_signalHandlerName(qtest_prevSignalName) var prevFunc = qtest_prevTarget[prevHandlerName] @@ -251,6 +256,8 @@ Item { } else { spy.qtest_valid = false } + + qtest_reentrancy_guard = false; } /*! \internal */ diff --git a/src/qmltest/TestCase.qml b/src/qmltest/TestCase.qml index 1c9011e01e..5a2cd1d5c4 100644 --- a/src/qmltest/TestCase.qml +++ b/src/qmltest/TestCase.qml @@ -1133,7 +1133,7 @@ Item { \qmlmethod TestCase::warn(message) Prints \a message as a warning message. Similar to - \c{QWARN(message)} in C++. + \c{qWarning(message)} in C++. \sa ignoreWarning() */ diff --git a/src/qmltest/doc/snippets/overview.cmake b/src/qmltest/doc/snippets/overview.cmake index 5415e42a17..9ea4d01e83 100644 --- a/src/qmltest/doc/snippets/overview.cmake +++ b/src/qmltest/doc/snippets/overview.cmake @@ -1,4 +1,4 @@ #! [cmake_use] -find_package(Qt6 COMPONENTS QuickTest REQUIRED) +find_package(Qt6 REQUIRED COMPONENTS QuickTest) target_link_libraries(mytarget PRIVATE Qt6::QuickTest) #! [cmake_use] diff --git a/src/qmltest/doc/src/qtquicktest-qmltypes.qdoc b/src/qmltest/doc/src/qtquicktest-qmltypes.qdoc index d7cada0db2..d874b20a5a 100644 --- a/src/qmltest/doc/src/qtquicktest-qmltypes.qdoc +++ b/src/qmltest/doc/src/qtquicktest-qmltypes.qdoc @@ -26,7 +26,7 @@ ****************************************************************************/ /*! - \qmlmodule QtTest 1.\QtMinorVersion + \qmlmodule QtTest \title Qt Quick Test QML Types \brief Provides QML types to unit test your QML application. \ingroup qmlmodules diff --git a/src/qmltest/quicktest.cpp b/src/qmltest/quicktest.cpp index 276463c7c5..8b1aad5dc0 100644 --- a/src/qmltest/quicktest.cpp +++ b/src/qmltest/quicktest.cpp @@ -298,7 +298,7 @@ private: if (!object) // Start at root of compilation unit if not enumerating a specific child object = compilationUnit->objectAt(0); - if (object->flags & Object::IsInlineComponentRoot) + if (object->hasFlag(Object::IsInlineComponentRoot)) return result; if (const auto superTypeUnit = compilationUnit->resolvedTypes.value( @@ -314,13 +314,13 @@ private: // Look for override of name in this type for (auto binding = object->bindingsBegin(); binding != object->bindingsEnd(); ++binding) { if (compilationUnit->stringAt(binding->propertyNameIndex) == QLatin1String("name")) { - if (binding->type == QV4::CompiledData::Binding::Type_String) { + if (binding->type() == QV4::CompiledData::Binding::Type_String) { result.testCaseName = compilationUnit->stringAt(binding->stringIndex); } else { QQmlError error; error.setUrl(compilationUnit->url()); - error.setLine(binding->location.line); - error.setColumn(binding->location.column); + error.setLine(binding->location.line()); + error.setColumn(binding->location.column()); error.setDescription(QStringLiteral("the 'name' property of a TestCase must be a literal string")); result.errors << error; } @@ -344,7 +344,7 @@ private: } for (auto binding = object->bindingsBegin(); binding != object->bindingsEnd(); ++binding) { - if (binding->type == QV4::CompiledData::Binding::Type_Object) { + if (binding->type() == QV4::CompiledData::Binding::Type_Object) { const Object *child = compilationUnit->objectAt(binding->value.objectIndex); result << enumerateTestCases(compilationUnit, child); } @@ -432,7 +432,7 @@ int quick_test_main_with_setup(int argc, char **argv, const char *name, const ch testPath = s; } -#if defined(Q_OS_ANDROID) +#if defined(Q_OS_ANDROID) || defined(Q_OS_INTEGRITY) if (testPath.isEmpty()) testPath = QLatin1String(":/"); #endif @@ -631,3 +631,5 @@ int quick_test_main_with_setup(int argc, char **argv, const char *name, const ch } QT_END_NAMESPACE + +#include "moc_quicktest_p.cpp" diff --git a/src/qmltest/quicktestevent.cpp b/src/qmltest/quicktestevent.cpp index 1ed642fe07..c41061200e 100644 --- a/src/qmltest/quicktestevent.cpp +++ b/src/qmltest/quicktestevent.cpp @@ -227,7 +227,7 @@ namespace QtQuickTest static const char *mouseActionNames[] = { "MousePress", "MouseRelease", "MouseClick", "MouseDoubleClick", "MouseMove", "MouseDoubleClickSequence" }; QString warning = QString::fromLatin1("Mouse event \"%1\" not accepted by receiving window"); - QWARN(warning.arg(QString::fromLatin1(mouseActionNames[static_cast<int>(action)])).toLatin1().data()); + QTest::qWarn(warning.arg(QString::fromLatin1(mouseActionNames[static_cast<int>(action)])).toLatin1().data()); } } @@ -482,3 +482,5 @@ QQuickTouchEventSequence *QuickTestEvent::touchEvent(QObject *item) } QT_END_NAMESPACE + +#include "moc_quicktestevent_p.cpp" diff --git a/src/qmltest/quicktestresult.cpp b/src/qmltest/quicktestresult.cpp index 0853c26f51..22edb95687 100644 --- a/src/qmltest/quicktestresult.cpp +++ b/src/qmltest/quicktestresult.cpp @@ -775,7 +775,8 @@ QObject *QuickTestResult::grabImage(QQuickItem *item) if (item && item->window()) { QQuickWindow *window = item->window(); QImage grabbed = window->grabWindow(); - QRectF rf(item->x(), item->y(), item->width(), item->height()); + const auto dpi = grabbed.devicePixelRatio(); + QRectF rf(item->x() * dpi, item->y() * dpi, item->width() * dpi, item->height() * dpi); rf = rf.intersected(QRectF(0, 0, grabbed.width(), grabbed.height())); QObject *o = new QuickTestImageObject(grabbed.copy(rf.toAlignedRect())); QQmlEngine::setContextForObject(o, qmlContext(this)); diff --git a/src/qmltest/quicktestutil.cpp b/src/qmltest/quicktestutil.cpp index 994c66845b..0e6694fd7b 100644 --- a/src/qmltest/quicktestutil.cpp +++ b/src/qmltest/quicktestutil.cpp @@ -111,3 +111,5 @@ int QuickTestUtil::callerLine(int frameIndex) const } QT_END_NAMESPACE + +#include "moc_quicktestutil_p.cpp" |