diff options
| author | Mitch Curtis <mitch.curtis@qt.io> | 2022-09-07 17:43:41 +0800 |
|---|---|---|
| committer | Mitch Curtis <mitch.curtis@qt.io> | 2022-09-08 22:46:55 +0800 |
| commit | f406385dfb9e88b3661f8524281b8f9d9e1351a7 (patch) | |
| tree | b85de908c66cbcacaad12659d085957b8c73ee2c /src/quickcontrolstestutils/dialogstestutils.cpp | |
| parent | 7938e9ab438d5163897643bd03c1f8f7c32e6d34 (diff) | |
Fix flaky tst_QQuickFileDialogImpl::goUpIntoLargeFolder test
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>
Diffstat (limited to 'src/quickcontrolstestutils/dialogstestutils.cpp')
| -rw-r--r-- | src/quickcontrolstestutils/dialogstestutils.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/quickcontrolstestutils/dialogstestutils.cpp b/src/quickcontrolstestutils/dialogstestutils.cpp index 972ef63f21..71622fabb0 100644 --- a/src/quickcontrolstestutils/dialogstestutils.cpp +++ b/src/quickcontrolstestutils/dialogstestutils.cpp @@ -40,9 +40,17 @@ bool QQuickDialogTestUtils::verifyFileDialogDelegates(QQuickListView *fileDialog } if (actualFiles != expectedFiles) { + QString expectedFilesStr = QDebug::toString(expectedFiles); + QString actualFilesStr = QDebug::toString(actualFiles); failureMessage = QString::fromLatin1("Mismatch in actual vs expected " - "delegates in fileDialogListView:\n expected: %1\n actual: %2") - .arg(QDebug::toString(expectedFiles), QDebug::toString(actualFiles)); + "delegates in fileDialogListView:\n expected: %1\n actual: %2"); + if (failureMessage.size() + expectedFilesStr.size() + actualFilesStr.size() > 1024) { + // If we've exceeded QTest's character limit for failure messages, + // just show the number of files. + expectedFilesStr = QString::number(expectedFiles.size()); + actualFilesStr = QString::number(actualFiles.size()); + } + failureMessage = failureMessage.arg(expectedFilesStr, actualFilesStr); return false; } |
