diff options
Diffstat (limited to 'tests/auto/modelview/tst_modelview.cpp')
-rw-r--r-- | tests/auto/modelview/tst_modelview.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/auto/modelview/tst_modelview.cpp b/tests/auto/modelview/tst_modelview.cpp index a4064a9..df09a0b 100644 --- a/tests/auto/modelview/tst_modelview.cpp +++ b/tests/auto/modelview/tst_modelview.cpp @@ -499,6 +499,7 @@ private slots: void testInitialData(); void testInitialDataTree(); void testHeaderData(); + void testHeaderDataChange(); void testFlags(); void testDataChanged(); void testDataChangedTree(); @@ -650,6 +651,34 @@ void TestModelView::testHeaderData() QCOMPARE(model->headerData(i, Qt::Horizontal, Qt::DisplayRole), m_sourceModel.headerData(i, Qt::Horizontal, Qt::DisplayRole)); } +void TestModelView::testHeaderDataChange() +{ + _SETUP_TEST_ + QString newHeader = QStringLiteral("New header name"); + QScopedPointer<QAbstractItemModelReplica> model(client.acquireModel("test")); + + FetchData f(model.data()); + QVERIFY(f.fetchAndWait(MODELTEST_WAIT_TIME)); + QVERIFY(model->headerData(0, Qt::Horizontal, Qt::DisplayRole).toString() != newHeader); + + QSignalSpy spyHeader(model.data(), &QAbstractItemModelReplica::headerDataChanged); + m_sourceModel.setHeaderData(0, Qt::Horizontal, newHeader, Qt::DisplayRole); + spyHeader.wait(); + QTRY_COMPARE(model->headerData(0, Qt::Horizontal, Qt::DisplayRole).toString(), newHeader); + + spyHeader.clear(); + m_sourceModel.setHeaderData(1, Qt::Horizontal, newHeader, Qt::DisplayRole); + spyHeader.wait(); + QTRY_COMPARE(model->headerData(1, Qt::Horizontal, Qt::DisplayRole).toString(), newHeader); + + QString anotherHeader = QStringLiteral("Modified header name"); + m_sourceModel.setHeaderData(0, Qt::Horizontal, anotherHeader, Qt::DisplayRole); + spyHeader.wait(); + + QTRY_COMPARE(model->headerData(0, Qt::Horizontal, Qt::DisplayRole).toString(), anotherHeader); + QCOMPARE(model->headerData(1, Qt::Horizontal, Qt::DisplayRole).toString(), newHeader); +} + void TestModelView::testDataChangedTree() { _SETUP_TEST_ |