aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qquickmenubar
diff options
context:
space:
mode:
authorMitch Curtis <mitch.curtis@qt.io>2018-04-10 17:40:07 +0200
committerMitch Curtis <mitch.curtis@qt.io>2018-09-05 14:57:22 +0000
commitd5cb26bc56a3b6f6e99c88654d4f7a65f43551ac (patch)
tree614cfe06c0cb5ae35202e7e9e57cb1170fb0eff0 /tests/auto/qquickmenubar
parent65374a95a33a677740f6e6b25c424b4a4b466b3f (diff)
Menu: ensure the correct delegates are used when created via Component
Don't add items until we're complete, as the delegate could change in the meantime. Instead, add them to contentData and create them when we're complete. Task-number: QTBUG-67559 Change-Id: I5f42129f49de861ff5f15d0069daeda0b4e5017c Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Diffstat (limited to 'tests/auto/qquickmenubar')
-rw-r--r--tests/auto/qquickmenubar/qquickmenubar.pro1
-rw-r--r--tests/auto/qquickmenubar/tst_qquickmenubar.cpp6
2 files changed, 7 insertions, 0 deletions
diff --git a/tests/auto/qquickmenubar/qquickmenubar.pro b/tests/auto/qquickmenubar/qquickmenubar.pro
index b7d41f0f..d2f28e47 100644
--- a/tests/auto/qquickmenubar/qquickmenubar.pro
+++ b/tests/auto/qquickmenubar/qquickmenubar.pro
@@ -1,5 +1,6 @@
CONFIG += testcase
TARGET = tst_qquickmenubar
+HEADERS += ../shared/menuutil.h
SOURCES += tst_qquickmenubar.cpp
macos:CONFIG -= app_bundle
diff --git a/tests/auto/qquickmenubar/tst_qquickmenubar.cpp b/tests/auto/qquickmenubar/tst_qquickmenubar.cpp
index 19d67eac..754e915b 100644
--- a/tests/auto/qquickmenubar/tst_qquickmenubar.cpp
+++ b/tests/auto/qquickmenubar/tst_qquickmenubar.cpp
@@ -36,6 +36,8 @@
#include <QtTest>
#include <QtQml>
+#include <QtQuick/private/qquicklistview_p.h>
+#include "../shared/menuutil.h"
#include "../shared/util.h"
#include "../shared/visualtestutil.h"
#include "../shared/qtest_quickcontrols.h"
@@ -146,6 +148,7 @@ void tst_qquickmenubar::mouse()
QVERIFY(helpMenuBarMenu->isVisible());
QTRY_VERIFY(!editMenuBarMenu->isVisible());
QTRY_VERIFY(helpMenuBarMenu->isOpened());
+ waitForMenuListViewPolish(helpMenuBarMenu);
// trigger a menu item to close the menu
QQuickMenuItem *aboutMenuItem = qobject_cast<QQuickMenuItem *>(helpMenuBarMenu->itemAt(0));
@@ -167,6 +170,7 @@ void tst_qquickmenubar::mouse()
QVERIFY(viewMenuBarItem->isHighlighted());
QVERIFY(viewMenuBarMenu->isVisible());
QTRY_VERIFY(viewMenuBarMenu->isOpened());
+ waitForMenuListViewPolish(viewMenuBarMenu);
// trigger a menu item to open a sub-menu
QQuickMenuItem *alignmentSubMenuItem = qobject_cast<QQuickMenuItem *>(viewMenuBarMenu->itemAt(0));
@@ -177,6 +181,7 @@ void tst_qquickmenubar::mouse()
QVERIFY(viewMenuBarMenu->isVisible());
QVERIFY(alignmentSubMenu->isVisible());
QTRY_VERIFY(alignmentSubMenu->isOpened());
+ waitForMenuListViewPolish(alignmentSubMenu);
// trigger a menu item to open a sub-sub-menu
QQuickMenuItem *verticalSubMenuItem = qobject_cast<QQuickMenuItem *>(alignmentSubMenu->itemAt(1));
@@ -188,6 +193,7 @@ void tst_qquickmenubar::mouse()
QVERIFY(alignmentSubMenu->isVisible());
QVERIFY(verticalSubMenu->isVisible());
QTRY_VERIFY(verticalSubMenu->isOpened());
+ waitForMenuListViewPolish(verticalSubMenu);
// trigger a menu item to close the whole chain of menus
QQuickMenuItem *centerMenuItem = qobject_cast<QQuickMenuItem *>(verticalSubMenu->itemAt(1));