summaryrefslogtreecommitdiffstats
path: root/tests/auto
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto')
-rw-r--r--tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp
index 1952314ce2..fd7b0d76ba 100644
--- a/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp
+++ b/tests/auto/corelib/itemmodels/qabstractitemmodel/tst_qabstractitemmodel.cpp
@@ -112,6 +112,8 @@ private slots:
void testChildrenLayoutsChanged();
+ void testRoleNames();
+
private:
DynamicTreeModel *m_model;
};
@@ -1976,5 +1978,31 @@ void tst_QAbstractItemModel::testChildrenLayoutsChanged()
}
}
+class OverrideRoleNames : public QStringListModel
+{
+ Q_OBJECT
+public:
+ OverrideRoleNames(QObject *parent = 0)
+ : QStringListModel(parent)
+ {
+
+ }
+
+ QHash<int, QByteArray> roleNames() const
+ {
+ QHash<int, QByteArray> roles = QStringListModel::roleNames();
+ roles.insert(Qt::UserRole + 2, "custom");
+ return roles;
+ }
+};
+
+void tst_QAbstractItemModel::testRoleNames()
+{
+ QAbstractItemModel *model = new OverrideRoleNames(this);
+ QHash<int, QByteArray> roles = model->roleNames();
+ QVERIFY(roles.contains(Qt::UserRole + 2));
+ QVERIFY(roles.value(Qt::UserRole + 2) == "custom");
+}
+
QTEST_MAIN(tst_QAbstractItemModel)
#include "tst_qabstractitemmodel.moc"