summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorDmitry Shachnev <mitya57@gmail.com>2016-11-15 17:04:36 +0300
committerShawn Rutledge <shawn.rutledge@qt.io>2016-12-01 07:35:59 +0000
commitf88f405401cc5dcb98cce37f3237bf37b51f77af (patch)
treededaf9fe69db112ce41d81fb63028c67eec67c84 /tests
parente3ca4287d99a8b1a5769c19b97679cd95b4e83e4 (diff)
Add a test case for removing a submenu from the menubar
If 5ca9631d3a0717afb066471ed5eb3b3ed9a9c08a is reverted, this test segfaults on Unity most of the times. Task-number: QTBUG-55966 Change-Id: Ice59842e0a1a7930e3cd10c4c7319ef033fe6a58 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp b/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp
index 3a4c4545df..a5b33ed8e7 100644
--- a/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp
+++ b/tests/auto/widgets/widgets/qmenubar/tst_qmenubar.cpp
@@ -133,6 +133,7 @@ private slots:
#ifdef Q_OS_MACOS
void taskQTBUG56275_reinsertMenuInParentlessQMenuBar();
#endif
+ void taskQTBUG55966_subMenuRemoved();
void platformMenu();
@@ -1541,5 +1542,22 @@ void tst_QMenuBar::taskQTBUG56275_reinsertMenuInParentlessQMenuBar()
}
#endif // Q_OS_MACOS
+void tst_QMenuBar::taskQTBUG55966_subMenuRemoved()
+{
+ QMainWindow window;
+ QMenuBar *menubar = window.menuBar();
+ QMenu *parentMenu = menubar->addMenu("Parent menu");
+
+ QAction *action = parentMenu->addAction("Action in parent menu");
+ QMenu *subMenu = new QMenu("Submenu");
+ action->setMenu(subMenu);
+ delete subMenu;
+
+ window.show();
+ QApplication::setActiveWindow(&window);
+ QVERIFY(QTest::qWaitForWindowActive(&window));
+ QTest::qWait(500);
+}
+
QTEST_MAIN(tst_QMenuBar)
#include "tst_qmenubar.moc"