diff options
author | Axel Spoerl <axel.spoerl@qt.io> | 2023-07-07 17:21:34 +0200 |
---|---|---|
committer | Axel Spoerl <axel.spoerl@qt.io> | 2023-07-08 17:16:54 +0200 |
commit | 25f7d95fce7e3082f9951fc5403ac7047e62c087 (patch) | |
tree | 80d6bd2dd378969457050e93c927f6f9256a040e /tests/auto/widgets/widgets | |
parent | 04f2acf93ad28848808822c9a8e0479509ec5555 (diff) |
tst_QDialogButtonBox::hideAndShowButton: Wait for focus widget
Spin the event loop with QTRY_VERIFY when checking the dialog box's
focus widget, to stop flaking.
Pick-to: 6.6 6.5
Change-Id: I24fab1264796e05645da4c12e4672daec9b06067
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'tests/auto/widgets/widgets')
-rw-r--r-- | tests/auto/widgets/widgets/qdialogbuttonbox/tst_qdialogbuttonbox.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/tests/auto/widgets/widgets/qdialogbuttonbox/tst_qdialogbuttonbox.cpp b/tests/auto/widgets/widgets/qdialogbuttonbox/tst_qdialogbuttonbox.cpp index c3f8fb0e30..b3f26e5dd8 100644 --- a/tests/auto/widgets/widgets/qdialogbuttonbox/tst_qdialogbuttonbox.cpp +++ b/tests/auto/widgets/widgets/qdialogbuttonbox/tst_qdialogbuttonbox.cpp @@ -7,6 +7,7 @@ #include <QtWidgets/QLayout> #include <QtWidgets/QDialog> #include <QtGui/QAction> +#include <QtGui/QStyleHints> #include <qdialogbuttonbox.h> #include <QtWidgets/private/qdialogbuttonbox_p.h> #include <QtWidgets/private/qabstractbutton_p.h> @@ -380,6 +381,9 @@ void tst_QDialogButtonBox::removeButton() #ifdef QT_BUILD_INTERNAL void tst_QDialogButtonBox::hideAndShowButton() { + if (QGuiApplication::styleHints()->tabFocusBehavior() == Qt::NoTabFocus) + QSKIP("Test skipped with Qt::NoTabFocus"); + QDialogButtonBox buttonBox; QDialogButtonBoxPrivate *d = static_cast<QDialogButtonBoxPrivate *>(QObjectPrivate::get(&buttonBox)); auto *apply = buttonBox.addButton( "Apply", QDialogButtonBox::ApplyRole ); @@ -402,7 +406,7 @@ void tst_QDialogButtonBox::hideAndShowButton() hideButton->hide(); widget->show(); QVERIFY(QTest::qWaitForWindowExposed(widget)); - QVERIFY(buttonBox.focusWidget()); // QTBUG-114377: Without fixing, focusWidget() == nullptr + QTRY_VERIFY(buttonBox.focusWidget()); // QTBUG-114377: Without fixing, focusWidget() == nullptr QCOMPARE(d->visibleButtons().count(), 2); QCOMPARE(d->hiddenButtons.count(), 1); QVERIFY(d->hiddenButtons.contains(hideButton)); |