From b1b7d802d6eb687c5accfc534369505579e4c5b1 Mon Sep 17 00:00:00 2001 From: Mitch Curtis Date: Tue, 14 Jun 2022 12:13:22 +0800 Subject: [PATCH] QQuickApplicationHelper: move initialProperties before qmlImportPaths 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. Change-Id: I91ee4f1c1d69c83de3800af2f704c4c8a19d812d Reviewed-by: Shawn Rutledge (cherry picked from commit f0d465b5a49b19638fe0170d82e6bb0b617e4dcd) Reviewed-by: Qt Cherry-pick Bot --- src/quickcontrolstestutils/controlstestutils.cpp | 4 ++-- src/quickcontrolstestutils/controlstestutils_p.h | 4 ++-- src/quickcontrolstestutils/dialogstestutils_p.h | 2 +- src/quicktestutils/quick/visualtestutils.cpp | 3 ++- src/quicktestutils/quick/visualtestutils_p.h | 4 ++-- .../tst_styleimportscompiletimeqmlonly.cpp | 2 +- 6 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/quickcontrolstestutils/controlstestutils.cpp b/src/quickcontrolstestutils/controlstestutils.cpp index 23e34cd4e4..b7fef77a92 100644 --- a/src/quickcontrolstestutils/controlstestutils.cpp +++ b/src/quickcontrolstestutils/controlstestutils.cpp @@ -34,8 +34,8 @@ #include QQuickControlsTestUtils::QQuickControlsApplicationHelper::QQuickControlsApplicationHelper(QQmlDataTest *testCase, - const QString &testFilePath, const QStringList &qmlImportPaths, const QVariantMap &initialProperties) - : QQuickApplicationHelper(testCase, testFilePath, qmlImportPaths, initialProperties) + const QString &testFilePath, const QVariantMap &initialProperties, const QStringList &qmlImportPaths) + : QQuickApplicationHelper(testCase, testFilePath, initialProperties, qmlImportPaths) { if (ready) appWindow = qobject_cast(cleanup.data()); diff --git a/src/quickcontrolstestutils/controlstestutils_p.h b/src/quickcontrolstestutils/controlstestutils_p.h index 0a4b670be7..99464bd223 100644 --- a/src/quickcontrolstestutils/controlstestutils_p.h +++ b/src/quickcontrolstestutils/controlstestutils_p.h @@ -54,8 +54,8 @@ namespace QQuickControlsTestUtils { public: QQuickControlsApplicationHelper(QQmlDataTest *testCase, const QString &testFilePath, - const QStringList &qmlImportPaths = {}, - const QVariantMap &initialProperties = {}); + const QVariantMap &initialProperties = {}, + const QStringList &qmlImportPaths = {}); QQuickApplicationWindow *appWindow = nullptr; }; diff --git a/src/quickcontrolstestutils/dialogstestutils_p.h b/src/quickcontrolstestutils/dialogstestutils_p.h index 5fe70a62a3..d5ab703be0 100644 --- a/src/quickcontrolstestutils/dialogstestutils_p.h +++ b/src/quickcontrolstestutils/dialogstestutils_p.h @@ -94,7 +94,7 @@ class DialogTestHelper public: DialogTestHelper(QQmlDataTest *testCase, const QString &testFilePath, const QStringList &qmlImportPaths = {}, const QVariantMap &initialProperties = {}) : - appHelper(testCase, testFilePath, qmlImportPaths, initialProperties) + appHelper(testCase, testFilePath, initialProperties, qmlImportPaths) { if (!appHelper.ready) return; diff --git a/src/quicktestutils/quick/visualtestutils.cpp b/src/quicktestutils/quick/visualtestutils.cpp index a99cae308d..2f891c915e 100644 --- a/src/quicktestutils/quick/visualtestutils.cpp +++ b/src/quicktestutils/quick/visualtestutils.cpp @@ -165,7 +165,8 @@ QQuickItem *QQuickVisualTestUtils::findViewDelegateItem(QQuickItemView *itemView return itemView->itemAtIndex(index); } -QQuickVisualTestUtils::QQuickApplicationHelper::QQuickApplicationHelper(QQmlDataTest *testCase, const QString &testFilePath, const QStringList &qmlImportPaths, const QVariantMap &initialProperties) +QQuickVisualTestUtils::QQuickApplicationHelper::QQuickApplicationHelper(QQmlDataTest *testCase, + const QString &testFilePath, const QVariantMap &initialProperties, const QStringList &qmlImportPaths) { for (const auto &path : qmlImportPaths) engine.addImportPath(path); diff --git a/src/quicktestutils/quick/visualtestutils_p.h b/src/quicktestutils/quick/visualtestutils_p.h index 7283f4f564..a09e0e591f 100644 --- a/src/quicktestutils/quick/visualtestutils_p.h +++ b/src/quicktestutils/quick/visualtestutils_p.h @@ -172,8 +172,8 @@ namespace QQuickVisualTestUtils { public: QQuickApplicationHelper(QQmlDataTest *testCase, const QString &testFilePath, - const QStringList &qmlImportPaths = {}, - const QVariantMap &initialProperties = {}); + const QVariantMap &initialProperties = {}, + const QStringList &qmlImportPaths = {}); // Return a C-style string instead of QString because that's what QTest uses for error messages, // so it saves code at the calling site. diff --git a/tests/auto/quickcontrols2/styleimportscompiletimeqmlonly/tst_styleimportscompiletimeqmlonly.cpp b/tests/auto/quickcontrols2/styleimportscompiletimeqmlonly/tst_styleimportscompiletimeqmlonly.cpp index b66b1179fa..3734d7df9e 100644 --- a/tests/auto/quickcontrols2/styleimportscompiletimeqmlonly/tst_styleimportscompiletimeqmlonly.cpp +++ b/tests/auto/quickcontrols2/styleimportscompiletimeqmlonly/tst_styleimportscompiletimeqmlonly.cpp @@ -68,7 +68,7 @@ tst_StyleImportsCompileTimeQmlOnly::tst_StyleImportsCompileTimeQmlOnly() void tst_StyleImportsCompileTimeQmlOnly::importQmlOnlyStyleWithoutControls() { QQuickControlsApplicationHelper helper(this, - QLatin1String("importQmlOnlyStyleWithoutControls.qml"), QStringList() << dataDirectory()); + QLatin1String("importQmlOnlyStyleWithoutControls.qml"), {}, QStringList() << dataDirectory()); QVERIFY2(helper.ready, helper.failureMessage()); auto button = helper.window->property("button").value();