aboutsummaryrefslogtreecommitdiffstats
path: root/src/quickcontrolstestutils
Commit message (Collapse)AuthorAgeFilesLines
* Correct license for Qt Test library filesLucie Gérard2024-04-055-5/+5
| | | | | | | | | | | | | They are licensed as test files. According to QUIP-18 [1], all test files should be LicenseRef-Qt-Commercial OR GPL-3.0-only [1]: https://contribute.qt-project.org/quips/18 Pick-to: 6.7 Task-number: QTBUG-121787 Change-Id: I5bc3e4d40c4d46a5499c9cd19480c5cdf36489f2 Reviewed-by: Kai Köhne <kai.koehne@qt.io>
* Use NO_GENERATE_CPP_EXPORTS explicitlyAlexey Edelev2024-03-201-0/+1
| | | | | | | | | Use NO_GENERATE_CPP_EXPORTS explicitly for modules that don't need the autogenerated exports header file. Task-number: QTBUG-90492 Change-Id: I6b2b9949f4592de399517dc5e8c7bd96dc7120d6 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Fix build without features.qml-object-modelTasuku Suzuki2023-10-131-3/+8
| | | | | | | | Introduce a new feature quicktemplates2-container for Container type quicktemplates2-container depends on qml-object-model Change-Id: Ic26f4b8bf390a04644b22e8067669a79b9d85e17 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix build with -no-feature-listview and itemviewsTasuku Suzuki2023-04-131-0/+7
| | | | | | | | | | | | | tested with each/all of below -no-feature-gridview -no-feature-listview -no-feature-pathview -no-feature-tableview -no-feature-treeview Pick-to: 6.5 Change-Id: I90cc7bc45bb9065000bc0fc7eeb8e80f02acb0d0 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Add StyleInfo singleton to Qt.test.controls helper moduleMitch Curtis2023-02-162-0/+16
| | | | | | | | | | | This allows accessing the current style in QML auto tests, which we need to conditionally skip certain tests after the Material 3 TextField/TextArea changes. Task-number: QTBUG-97993 Pick-to: 6.5 Change-Id: Ife4ca79deb96f17e879353a901e421b03b29ff25 Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
* qtest_quickcontrols_p.h: don't mark functions file-staticMarc Mutz2023-01-201-2/+2
| | | | | | | | | | | | | | | | | | It's a header, and at least tst_styleimports.cpp doesn't use all of the functions, so throws a -Wunused-function warning on Clang 15 for runTests(): qtest_quickcontrols_p.h:36:12: warning: unused function 'runTests' [-Wunused-function] static int runTests(QObject *testObject, int argc, char *argv[]) ^ Fix by marking the functions as inline instead. Amends e310dadef779b28845b41fb091634cd001cda9de. Pick-to: 6.5 6.4 6.2 Change-Id: Id6cee7bdc2fe93a5e034d7ed445dc5f2c5d35360 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Port from container::count() and length() to size()Marc Mutz2022-10-071-2/+2
| | | | | | | | | | | | | | | | | | | | This is a semantic patch using ClangTidyTransformator as in qtbase/df9d882d41b741fef7c5beeddb0abe9d904443d8: auto QtContainerClass = anyOf( expr(hasType(cxxRecordDecl(isSameOrDerivedFrom(hasAnyName(classes))))).bind(o), expr(hasType(namedDecl(hasAnyName(<classes>)))).bind(o)); makeRule(cxxMemberCallExpr(on(QtContainerClass), callee(cxxMethodDecl(hasAnyName({"count", "length"), parameterCountIs(0))))), changeTo(cat(access(o, cat("size"), "()"))), cat("use 'size()' instead of 'count()/length()'")) a.k.a qt-port-to-std-compatible-api with config Scope: 'Container', with the extended set of container classes recognized. Change-Id: Idb1f75dfe2323bd1d9e8b4d58d54f1b4b80c7ed7 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Fix warning from ignoring return of [nodiscard] methodVolker Hilsheimer2022-09-181-3/+12
| | | | | | | | | | | | | Compiler warns: ignoring return value of function declared with 'nodiscard' attribute [-Wunused-result] Pick-to: 6.4 Change-Id: If10d41fad7dc77b36eecc8725de178b0908f32de Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Drop unnecessary creation contexts from Quick ControlsUlf Hermann2022-09-093-0/+34
| | | | | | | | | | | | | | | Bound components can only be instantiated in the context they're declared in. Adding a context in between before instantiating a component makes it impossible to bind the component. We want to use bound components so that we can safely use IDs of other objects from the same context inside the objects created from the component. Pick-to: 6.4 Fixes: QTBUG-106042 Change-Id: I7a0e1ea3e079ccd0f5fe156f07f8bc62149c6c0a Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix flaky tst_QQuickFileDialogImpl::goUpIntoLargeFolder testMitch Curtis2022-09-081-2/+10
| | | | | | | | | | | | | | | | Ensure that all expected delegates have loaded before trying to verify that the correct file is selected. This requires a modification to verifyFileDialogDelegates to account for the large amount of files that goUpIntoLargeFolder deals with, as QTest's failure message is limited to 1024 characters. Fixes: QTBUG-101488 Pick-to: 6.2 6.3 6.4 Change-Id: I65cf6ffc4724309083899dac2acc1f04a11a1220 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
* Change the license of all CMakeLists.txt and *.cmake files to BSDLucie Gérard2022-09-071-1/+1
| | | | | | | Task-number: QTBUG-105718 Change-Id: Id89ed14990804a5024183e75382cc539d4293da1 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Add license headers to cmake filesLucie Gérard2022-07-081-0/+3
| | | | | | | | | | | | CMakeLists.txt and .cmake files of significant size (more than 2 lines according to our check in tst_license.pl) now have the copyright and license header. Existing copyright statements remain intact Task-number: QTBUG-88621 Change-Id: I72c89a98c42bbc9234d8495e9e503bec81d11037 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* tst_QQuickFileDialogImpl: check that closing the dialog rejectsMarc Mutz2022-06-211-0/+7
| | | | | | | | | | It doesn't. Task-number: QTBUG-101973 Pick-to: 6.4 6.3 6.2 Change-Id: I63a76f9919a4b9a1ebc3b2f95189b518e9c6858b Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* QQuickApplicationHelper: move initialProperties before qmlImportPathsMitch Curtis2022-06-153-5/+5
| | | | | | | | | | | It's far more common to want to initialize certain properties in the QML file, so this should come before qmlImportPaths so that users of the (private) API do not need to pass an empty QStringList (for qmlImportPaths) each time they want to provide initial properties. Pick-to: 6.2 6.3 6.4 Change-Id: I91ee4f1c1d69c83de3800af2f704c4c8a19d812d Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* quick/controlstestutils: add [[nodiscard]] to functions returning stuffMitch Curtis2022-06-131-1/+1
| | | | | | | | This way we'll get warned when the return value is not used. Pick-to: 6.2 6.3 6.4 Change-Id: If93abf2760b2ae3165720512c7d7f8dfa2600cf4 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Use SPDX license identifiersLucie Gérard2022-06-115-157/+10
| | | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Files that have to be modified by hand are modified. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I63563bbeb6f60f89d2c99660400dca7fab78a294 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* tst_qquickfiledialogimpl: refactor duplicated code into helpersMitch Curtis2022-06-061-1/+11
| | | | | | Pick-to: 6.2 6.3 Change-Id: I1445d41dbbbe346506195c160e87d0b05770d22c Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
* QtQuickTest: add API for checking for polish at window levelMitch Curtis2022-06-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a qIsPolishScheduled(QQuickWindow *) overload of qIsPolishScheduled(QQuickItem *) (added in 40d6072bc8a4df0fe1a16025fe30fe653463a446) and deprecates qWaitForItemPolished() (added in 7a3cad0619662b992154e075ec6b840bfc8a46a7) in favor of qWaitForPolish(), which has QQuickItem* and QQuickWindow* overloads. The existing functions that take QQuickItem are useful, but testing Qt Quick applications can be made even easier by allowing users to check if a window has any items that need to be polished. This information is already present (in QQuickWindowPrivate::itemsToPolish), so it's very efficient to check for. This is especially useful now that Qt Quick Layouts using polishing for their layouting, for example, as it's no longer necessary to find individual polishable items in complex hierarchies before proceeding to interact with child items. [ChangeLog][QtQuickTest][QQuickTest] Added QQuickTest::qIsPolishScheduled(QQuickWindow *) and QQuickTest::qWaitForPolish(QQuickWindow *) functions for verifying that updatePolish() was called on one or more items managed by a window. [ChangeLog][QtQuickTest][QQuickTest] Deprecated QQuickTest::qWaitForItemPolished(QQuickItem *). Use the new QQuickTest::qWaitForPolish(QQuickItem *) function instead. Fixes: QTBUG-93757 Change-Id: I95b6e051b3c9fd2fa93604f4d9ccda486bb29f9d Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Add FolderDialogMitch Curtis2021-12-103-0/+165
| | | | | | | | | | | [ChangeLog][QtQuickDialogs] Added FolderDialog. This is a native FolderDialog on platforms that support it, and a non-native Qt Quick FolderDialog on platforms that don't. Task-number: QTBUG-87798 Change-Id: I95d872f450b528e54dd26f5421b6c5a4b71a9bc3 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Use up-to date LGPL license headerKai Köhne2021-11-292-22/+28
| | | | | | | | Remove usages of outdated LGPL3 header that references LICENSES.LGPLv3 instead of LICENSES.LGPL3. Change-Id: If7a90ec18331a68491c5a740f131a5e7b3f37df4 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Consolidate test helpers into private librariesMitch Curtis2021-09-135-0/+546
Previously each test would include and build sources from the shared folder. Now we make those sources a library, build it once, then have each test link to it instead. We also take the opportunity to move some helpers that qtquickcontrols2 had added into the quicktestutils library where it makes sense, and for the helpers that don't make sense to be there, move them into quickcontrolstestutils. We add the libraries to src/ so that they are internal modules built as part of Qt, rather than tests. That way we can use them in a standalone test outside of qtdeclarative. Task-number: QTBUG-95621 Pick-to: 6.2 Change-Id: I0a2ab3976fdbff2e4414df7bdc0808f16453b80a Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>