diff options
author | Mitch Curtis <mitch.curtis@qt.io> | 2022-07-08 17:14:26 +0800 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2022-07-11 05:24:05 +0000 |
commit | f98c4a631fcad24c43e97b9db51874c12297a443 (patch) | |
tree | 67f805976ddfaa3e9e81228590454574af1138b1 /tests | |
parent | 2a7dbb3c4813ff8240d948c145fd7728c190e924 (diff) |
Stabilise changeFolderViaDoubleClick and chooseFolderViaEnter
These were failing on Ubuntu 20.04 due to the ListView delegates not
being up-to-date. The only reliable solution is to repeatedly check
until they are.
Task-number: QTBUG-101488
Change-Id: I437bb1b4bf9ab35ad23b1da1a89e9f77872a2f48
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
(cherry picked from commit 989e05a0b8240778c9f249edea5c9d27d68f8e0f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/quickdialogs/qquickfiledialogimpl/tst_qquickfiledialogimpl.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/tests/auto/quickdialogs/qquickfiledialogimpl/tst_qquickfiledialogimpl.cpp b/tests/auto/quickdialogs/qquickfiledialogimpl/tst_qquickfiledialogimpl.cpp index 616dce7ce8..f770922cfd 100644 --- a/tests/auto/quickdialogs/qquickfiledialogimpl/tst_qquickfiledialogimpl.cpp +++ b/tests/auto/quickdialogs/qquickfiledialogimpl/tst_qquickfiledialogimpl.cpp @@ -524,6 +524,11 @@ void tst_QQuickFileDialogImpl::changeFolderViaDoubleClick() QTRY_VERIFY(findViewDelegateItem(dialogHelper.fileDialogListView, subDirIndex, subDirDelegate)); COMPARE_URL(subDirDelegate->file(), QUrl::fromLocalFile(tempSubDir.path())); QVERIFY(doubleClickButton(subDirDelegate)); + const QStringList expectedVisibleFiles = showDirsFirst + ? QStringList { tempSubSubDir.path(), tempSubFile1->fileName(), tempSubFile2->fileName() } + : QStringList { tempSubFile1->fileName(), tempSubFile2->fileName(), tempSubSubDir.path() }; + QString failureMessage; + QTRY_VERIFY2(verifyFileDialogDelegates(dialogHelper.fileDialogListView, expectedVisibleFiles, failureMessage), qPrintable(failureMessage)); // The first file in the directory should now be selected. const QUrl firstFileUrl = showDirsFirst ? QUrl::fromLocalFile(tempSubSubDir.path()) : QUrl::fromLocalFile(tempSubFile1->fileName()); VERIFY_FILE_SELECTED_AND_FOCUSED(QUrl::fromLocalFile(tempSubDir.path()), firstFileUrl, 0); @@ -580,6 +585,9 @@ void tst_QQuickFileDialogImpl::chooseFolderViaEnter() // Select the delegate by pressing enter. QTest::keyClick(dialogHelper.window(), Qt::Key_Return); + const QStringList expectedVisibleFiles = { tempSubSubDir.path(), tempSubFile1->fileName(), tempSubFile2->fileName() }; + QString failureMessage; + QTRY_VERIFY2(verifyFileDialogDelegates(dialogHelper.fileDialogListView, expectedVisibleFiles, failureMessage), qPrintable(failureMessage)); // The first file in the new directory should be selected, which is "sub-sub-dir". VERIFY_FILE_SELECTED_AND_FOCUSED(QUrl::fromLocalFile(tempSubDir.path()), QUrl::fromLocalFile(tempSubSubDir.path()), 0); // Since we only chose a folder, the dialog should still be open. |