diff options
author | Friedemann Kleint <Friedemann.Kleint@digia.com> | 2013-10-14 16:52:34 +0300 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-14 17:29:37 +0200 |
commit | 12b68ed072f290c2c148a3241d25107ffa34102a (patch) | |
tree | c93be4280a027837d4e87178f68eded8028c3462 /tests/auto | |
parent | 535e3567496caa317221a786486968a424f5faa8 (diff) |
Stabilize tst_qmenu on Mac.
Position cursor outside and move once more.
Task-number: QTBUG-33972
Change-Id: If060f1359361981cf1243d8d2a4ebef181689d74
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Diffstat (limited to 'tests/auto')
-rw-r--r-- | tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp index 3c32b8a476..7c1bb957d6 100644 --- a/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp +++ b/tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp @@ -764,14 +764,20 @@ void tst_QMenu::task258920_mouseBorder() menu.setMouseTracking(true); QAction *action = menu.addAction("test"); - menu.popup(QApplication::desktop()->availableGeometry().center()); + const QPoint center = QApplication::desktop()->availableGeometry().center(); +#ifndef QT_NO_CURSOR + QCursor::setPos(center - QPoint(100, 100)); // Mac: Ensure cursor is outside +#endif + menu.popup(center); QVERIFY(QTest::qWaitForWindowExposed(&menu)); QTest::qWait(100); QRect actionRect = menu.actionGeometry(action); - QTest::mouseMove(&menu, actionRect.center()); + const QPoint actionCenter = actionRect.center(); + QTest::mouseMove(&menu, actionCenter - QPoint(-10, 0)); QTest::qWait(30); - QTest::mouseMove(&menu, actionRect.center() + QPoint(10, 0)); + QTest::mouseMove(&menu, actionCenter); QTest::qWait(30); + QTest::mouseMove(&menu, actionCenter + QPoint(10, 0)); QTRY_COMPARE(action, menu.activeAction()); menu.painted = false; QTest::mouseMove(&menu, QPoint(actionRect.center().x(), actionRect.bottom() + 1)); |