diff options
author | Maks Naumov <maksqwe1@ukr.net> | 2015-01-24 21:26:06 +0200 |
---|---|---|
committer | Maks Naumov <maksqwe1@ukr.net> | 2015-02-06 09:43:38 +0000 |
commit | b444769840b2497f1295bca0694fe59aa78bb551 (patch) | |
tree | c4813f4e963a254a094a7a8c85348128f0832557 /tests/auto | |
parent | b3fc5e1ea3eb4fe838ac716aaca4efaa5de5a814 (diff) |
Don't crash with invalid QModelIndex or when QTreeWidgetItem is NULL in mimeData()
Change-Id: I0a9abaa05cf136eadf222d3e7d102930719b84ff
Reviewed-by: David Faure <david.faure@kdab.com>
Diffstat (limited to 'tests/auto')
-rw-r--r-- | tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp | 8 | ||||
-rw-r--r-- | tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp | 11 |
2 files changed, 19 insertions, 0 deletions
diff --git a/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp b/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp index cde6141a71..10dedfaf95 100644 --- a/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp +++ b/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp @@ -129,6 +129,7 @@ private slots: void removeRowsAndColumns(); void itemRoleNames(); + void getMimeDataWithInvalidModelIndex(); private: QAbstractItemModel *m_model; @@ -1671,6 +1672,13 @@ void tst_QStandardItemModel::itemRoleNames() VERIFY_MODEL } +void tst_QStandardItemModel::getMimeDataWithInvalidModelIndex() +{ + QStandardItemModel model; + QTest::ignoreMessage(QtWarningMsg, "QStandardItemModel::mimeData: No item associated with invalid index"); + QMimeData *data = model.mimeData(QModelIndexList() << QModelIndex()); + QVERIFY(!data); +} QTEST_MAIN(tst_QStandardItemModel) #include "tst_qstandarditemmodel.moc" diff --git a/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp b/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp index c1331d62e1..bdeaaf38db 100644 --- a/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp +++ b/tests/auto/widgets/itemviews/qtreewidget/tst_qtreewidget.cpp @@ -49,6 +49,9 @@ class CustomTreeWidget : public QTreeWidget public: QModelIndex indexFromItem(QTreeWidgetItem *item, int column = 0) const { return QTreeWidget::indexFromItem(item, column); } + + QMimeData * mimeData(const QList<QTreeWidgetItem*> items) const + { return QTreeWidget::mimeData(items); } }; class tst_QTreeWidget : public QObject @@ -157,6 +160,7 @@ private slots: void setChildIndicatorPolicy(); void task20345_sortChildren(); + void getMimeDataWithInvalidItem(); public slots: void itemSelectionChanged(); @@ -3368,6 +3372,13 @@ void tst_QTreeWidget::task20345_sortChildren() QVERIFY(1); } +void tst_QTreeWidget::getMimeDataWithInvalidItem() +{ + CustomTreeWidget w; + QTest::ignoreMessage(QtWarningMsg, "QTreeWidget::mimeData: Null-item passed"); + QMimeData *md = w.mimeData(QList<QTreeWidgetItem*>() << Q_NULLPTR); + QVERIFY(!md); +} QTEST_MAIN(tst_QTreeWidget) #include "tst_qtreewidget.moc" |