aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2017-07-12 15:58:02 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2017-07-12 14:55:59 +0000
commit141fdff2c59eac4ded9581dd7c6b606bb91197b3 (patch)
tree2af00e86b0ed7a5bfebc903b11e1518b3b9aa177 /tests
parentd5be2fdb90f02258c60545b69e3247ad0919672c (diff)
Add QQuickMenu::count
[ChangeLog][Controls][Menu] Added "count" property. Change-Id: I42971a6bf8fd74b9f2d3df52f191b66cd7022b81 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/menu/tst_menu.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/auto/menu/tst_menu.cpp b/tests/auto/menu/tst_menu.cpp
index 15969d0b..0fa3a9e8 100644
--- a/tests/auto/menu/tst_menu.cpp
+++ b/tests/auto/menu/tst_menu.cpp
@@ -64,6 +64,7 @@ public:
private slots:
void defaults();
+ void count();
void mouse();
void pressAndHold();
void contextMenuKeyboard();
@@ -93,6 +94,35 @@ void tst_menu::defaults()
QCOMPARE(emptyMenu->isVisible(), false);
QCOMPARE(emptyMenu->currentIndex(), -1);
QCOMPARE(emptyMenu->contentItem()->property("currentIndex"), QVariant(-1));
+ QCOMPARE(emptyMenu->count(), 0);
+}
+
+void tst_menu::count()
+{
+ QQuickApplicationHelper helper(this, QLatin1String("applicationwindow.qml"));
+
+ QQuickMenu *menu = helper.window->property("emptyMenu").value<QQuickMenu*>();
+ QVERIFY(menu);
+
+ QSignalSpy countSpy(menu, &QQuickMenu::countChanged);
+ QVERIFY(countSpy.isValid());
+
+ menu->addItem(new QQuickItem);
+ QCOMPARE(menu->count(), 1);
+ QCOMPARE(countSpy.count(), 1);
+
+ menu->insertItem(0, new QQuickItem);
+ QCOMPARE(menu->count(), 2);
+ QCOMPARE(countSpy.count(), 2);
+
+ menu->removeItem(menu->itemAt(1));
+ QCOMPARE(menu->count(), 1);
+ QCOMPARE(countSpy.count(), 3);
+
+ QQuickItem *item = menu->takeItem(0);
+ QVERIFY(item);
+ QCOMPARE(menu->count(), 0);
+ QCOMPARE(countSpy.count(), 4);
}
void tst_menu::mouse()