diff --git a/tests/gui/TestGui.cpp b/tests/gui/TestGui.cpp index 1d1b11ad2..c8bf7c987 100644 --- a/tests/gui/TestGui.cpp +++ b/tests/gui/TestGui.cpp @@ -346,8 +346,8 @@ void TestGui::testMergeDatabase() fileDialog()->setNextFileName(QString(KEEPASSX_TEST_DATA_DIR).append("/MergeDatabase.kdbx")); triggerAction("actionDatabaseMerge"); - QTRY_COMPARE(QApplication::focusWidget()->objectName(), QString("passwordEdit")); - auto* editPasswordMerge = QApplication::focusWidget(); + QWidget* editPasswordMerge; + QTRY_VERIFY((editPasswordMerge = QApplication::focusWidget()) && editPasswordMerge->objectName() == "passwordEdit"); QVERIFY(editPasswordMerge->isVisible()); QTest::keyClicks(editPasswordMerge, "a"); @@ -1931,18 +1931,28 @@ void TestGui::testTrayRestoreHide() trayIcon->activated(QSystemTrayIcon::Trigger); QTRY_VERIFY(m_mainWindow->isVisible()); + // Wait out window hide grace period before triggering tray icon again + int gracePeriod = 250; +#ifdef Q_OS_WIN + // Windows requires a shorter grace period + gracePeriod = 50; +#endif + + Tools::wait(gracePeriod); trayIcon->activated(QSystemTrayIcon::Trigger); QTRY_VERIFY(!m_mainWindow->isVisible()); trayIcon->activated(QSystemTrayIcon::MiddleClick); QTRY_VERIFY(m_mainWindow->isVisible()); + Tools::wait(gracePeriod); trayIcon->activated(QSystemTrayIcon::MiddleClick); QTRY_VERIFY(!m_mainWindow->isVisible()); trayIcon->activated(QSystemTrayIcon::DoubleClick); QTRY_VERIFY(m_mainWindow->isVisible()); + Tools::wait(gracePeriod); trayIcon->activated(QSystemTrayIcon::DoubleClick); QTRY_VERIFY(!m_mainWindow->isVisible()); diff --git a/tests/gui/attachments/TestImageAttachmentsWidget.cpp b/tests/gui/attachments/TestImageAttachmentsWidget.cpp index fc2d14e2d..44800a907 100644 --- a/tests/gui/attachments/TestImageAttachmentsWidget.cpp +++ b/tests/gui/attachments/TestImageAttachmentsWidget.cpp @@ -43,10 +43,7 @@ void TestImageAttachmentsWidget::testFitInView() auto zoomFactor = m_imageAttachmentsView->transform(); m_widget->setMinimumSize(m_widget->size() + QSize{100, 100}); - - QCoreApplication::processEvents(); - - QVERIFY(zoomFactor != m_imageAttachmentsView->transform()); + QTRY_VERIFY(zoomFactor != m_imageAttachmentsView->transform()); } void TestImageAttachmentsWidget::testZoomCombobox() @@ -56,10 +53,7 @@ void TestImageAttachmentsWidget::testZoomCombobox() QVERIFY(index != -1); m_zoomCombobox->setCurrentIndex(index); - - QCoreApplication::processEvents(); - - QCOMPARE(m_imageAttachmentsView->transform(), QTransform::fromScale(zoom, zoom)); + QTRY_COMPARE(m_imageAttachmentsView->transform(), QTransform::fromScale(zoom, zoom)); } } @@ -67,10 +61,7 @@ void TestImageAttachmentsWidget::testEditZoomCombobox() { for (double i = 0.25; i < 5; i += 0.25) { m_zoomCombobox->setCurrentText(QString::number(i * 100)); - - QCoreApplication::processEvents(); - - QCOMPARE(m_imageAttachmentsView->transform(), QTransform::fromScale(i, i)); + QTRY_COMPARE(m_imageAttachmentsView->transform(), QTransform::fromScale(i, i)); } } @@ -79,19 +70,13 @@ void TestImageAttachmentsWidget::testEditWithPercentZoomCombobox() // Example 100 % for (double i = 0.25; i < 5; i += 0.25) { m_zoomCombobox->setCurrentText(QString("%1 %").arg(i * 100)); - - QCoreApplication::processEvents(); - - QCOMPARE(m_imageAttachmentsView->transform(), QTransform::fromScale(i, i)); + QTRY_COMPARE(m_imageAttachmentsView->transform(), QTransform::fromScale(i, i)); } // Example 100% for (double i = 0.25; i < 5; i += 0.25) { m_zoomCombobox->setCurrentText(QString("%1%").arg(i * 100)); - - QCoreApplication::processEvents(); - - QCOMPARE(m_imageAttachmentsView->transform(), QTransform::fromScale(i, i)); + QTRY_COMPARE(m_imageAttachmentsView->transform(), QTransform::fromScale(i, i)); } } @@ -108,10 +93,7 @@ void TestImageAttachmentsWidget::testInvalidValueZoomCombobox() for (const auto& invalidValue : {"Help", "3,4", "", ".", "% 100"}) { m_zoomCombobox->setCurrentText(invalidValue); - - QCoreApplication::processEvents(); - - QCOMPARE(m_imageAttachmentsView->transform(), expectedTransform); + QTRY_COMPARE(m_imageAttachmentsView->transform(), expectedTransform); } } @@ -208,10 +190,7 @@ void TestImageAttachmentsWidget::testZoomLowerBound() true); QCoreApplication::sendEvent(m_imageAttachmentsView->viewport(), &event); - - QCoreApplication::processEvents(); - - QCOMPARE(m_imageAttachmentsView->transform(), expectTransform); + QTRY_COMPARE(m_imageAttachmentsView->transform(), expectTransform); } void TestImageAttachmentsWidget::testZoomUpperBound() @@ -237,8 +216,5 @@ void TestImageAttachmentsWidget::testZoomUpperBound() true); QCoreApplication::sendEvent(m_imageAttachmentsView->viewport(), &event); - - QCoreApplication::processEvents(); - - QCOMPARE(m_imageAttachmentsView->transform(), expectTransform); + QTRY_COMPARE(m_imageAttachmentsView->transform(), expectTransform); }