diff options
Diffstat (limited to 'tests/auto/quick/qquicklistview/tst_qquicklistview.cpp')
-rw-r--r-- | tests/auto/quick/qquicklistview/tst_qquicklistview.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/auto/quick/qquicklistview/tst_qquicklistview.cpp b/tests/auto/quick/qquicklistview/tst_qquicklistview.cpp index 65892ddd9b..f8c7de6635 100644 --- a/tests/auto/quick/qquicklistview/tst_qquicklistview.cpp +++ b/tests/auto/quick/qquicklistview/tst_qquicklistview.cpp @@ -207,6 +207,7 @@ private slots: void parentBinding(); void defaultHighlightMoveDuration(); + void accessEmptyCurrentItem_QTBUG_30227(); private: template <class T> void items(const QUrl &source, bool forceLayout); @@ -6814,6 +6815,21 @@ void tst_QQuickListView::defaultHighlightMoveDuration() QCOMPARE(obj->property("highlightMoveDuration").toInt(), -1); } +void tst_QQuickListView::accessEmptyCurrentItem_QTBUG_30227() +{ + QQuickView *window = createView(); + window->setSource(testFileUrl("emptymodel.qml")); + + QQuickListView *listview = window->rootObject()->findChild<QQuickListView*>(); + QTRY_VERIFY(listview != 0); + + QMetaObject::invokeMethod(window->rootObject(), "remove"); + QVERIFY(window->rootObject()->property("isCurrentItemNull").toBool()); + + QMetaObject::invokeMethod(window->rootObject(), "add"); + QVERIFY(!window->rootObject()->property("isCurrentItemNull").toBool()); +} + QTEST_MAIN(tst_QQuickListView) #include "tst_qquicklistview.moc" |