summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2020-01-04 15:32:34 +0100
committerLiang Qi <liang.qi@qt.io>2020-01-04 15:32:34 +0100
commita503bf54705d89204007e8f887b668fe5ef519fc (patch)
treeb2d1a452da39450eac78a1aeb1df116a73f64b23 /tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp
parente65c43fd0ffa57248e7d750570b7deae171a82f5 (diff)
parent1f87fb359fdff14e42662384a9c8a0bcb3837671 (diff)
Merge remote-tracking branch 'origin/5.15' into dev
Conflicts: src/corelib/tools/qvector.h Make QVector(DataPointer dd) public to be able to properly merge 5b4b437b30b320e2cd7c9a566999a39772e5d431 from 5.15 into dev. src/widgets/kernel/qapplication.cpp tests/auto/tools/moc/allmocs_baseline_in.json Done-With: Christian Ehrlicher <ch.ehrlicher@gmx.de> Change-Id: I929ba7c036d570382d0454c2c75f6f0d96ddbc01
Diffstat (limited to 'tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp')
-rw-r--r--tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp b/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp
index bc8bc38da6..032f17c0a7 100644
--- a/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp
+++ b/tests/auto/gui/itemmodels/qstandarditemmodel/tst_qstandarditemmodel.cpp
@@ -131,6 +131,7 @@ private slots:
void supportedDragDropActions();
void taskQTBUG_45114_setItemData();
+ void setItemPersistentIndex();
private:
QStandardItemModel *m_model;
@@ -1811,5 +1812,26 @@ void tst_QStandardItemModel::taskQTBUG_45114_setItemData()
QVERIFY(!itemRoles.keys().contains(Qt::UserRole + 3));
}
+void tst_QStandardItemModel::setItemPersistentIndex()
+{
+ QPersistentModelIndex persistentIndex;
+ // setItem on an already existing item should not destroy the persistent index
+ QStandardItemModel m;
+ persistentIndex = m.index(0, 0);
+ QVERIFY(!persistentIndex.isValid());
+
+ m.setItem(0, 0, new QStandardItem);
+ persistentIndex = m.index(0, 0);
+ QVERIFY(persistentIndex.isValid());
+ QCOMPARE(persistentIndex.row(), 0);
+ QCOMPARE(persistentIndex.column(), 0);
+
+ m.setItem(0, 0, new QStandardItem);
+ QVERIFY(persistentIndex.isValid());
+
+ m.setItem(0, 0, nullptr);
+ QVERIFY(!persistentIndex.isValid());
+}
+
QTEST_MAIN(tst_QStandardItemModel)
#include "tst_qstandarditemmodel.moc"