tests/auto/qdirmodel/tst_qdirmodel.cpp
changeset 30 5dc02b23752f
parent 18 2f34d5167611
--- a/tests/auto/qdirmodel/tst_qdirmodel.cpp	Wed Jun 23 19:07:03 2010 +0300
+++ b/tests/auto/qdirmodel/tst_qdirmodel.cpp	Tue Jul 06 15:10:48 2010 +0300
@@ -106,6 +106,9 @@
     void filter();
 
     void task244669_remove();
+
+    void roleNames_data();
+    void roleNames();
 };
 
 // Testing get/set functions
@@ -610,6 +613,11 @@
     //this task showed that the persistent model indexes got corrupted when sorting
     QString path = SRCDIR;
 
+#ifdef Q_OS_SYMBIAN
+    if(!RProcess().HasCapability(ECapabilityAllFiles))
+        QEXPECT_FAIL("", "QTBUG-9746", Continue);
+#endif
+
     QDirModel model;
 
     /* QDirModel has a bug if we show the content of the subdirectory inside a hidden directory
@@ -681,5 +689,30 @@
     QCOMPARE(parent.data() , model.index(SRCDIR "dirtest").data());
 }
 
+void tst_QDirModel::roleNames_data()
+{
+    QTest::addColumn<int>("role");
+    QTest::addColumn<QByteArray>("roleName");
+    QTest::newRow("decoration") << int(Qt::DecorationRole) << QByteArray("decoration");
+    QTest::newRow("display") << int(Qt::DisplayRole) << QByteArray("display");
+    QTest::newRow("fileIcon") << int(QDirModel::FileIconRole) << QByteArray("fileIcon");
+    QTest::newRow("filePath") << int(QDirModel::FilePathRole) << QByteArray("filePath");
+    QTest::newRow("fileName") << int(QDirModel::FileNameRole) << QByteArray("fileName");
+}
+
+void tst_QDirModel::roleNames()
+{
+    QDirModel model;
+    QHash<int, QByteArray> roles = model.roleNames();
+
+    QFETCH(int, role);
+    QVERIFY(roles.contains(role));
+
+    QFETCH(QByteArray, roleName);
+    QList<QByteArray> values = roles.values(role);
+    QVERIFY(values.contains(roleName));
+}
+
+
 QTEST_MAIN(tst_QDirModel)
 #include "tst_qdirmodel.moc"