]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/tests/kfileitemmodeltest.cpp
Merge branch 'Applications/16.04'
[dolphin.git] / src / tests / kfileitemmodeltest.cpp
index 74b2342c84948351582703f2f5e33c9b41dd52c9..eba32e1e1caa341e1db26399b4027a86614309fc 100644 (file)
 #include "kitemviews/private/kfileitemmodeldirlister.h"
 #include "testdir.h"
 
-void myMessageOutput(QtMsgType type, const char* msg)
+void myMessageOutput(QtMsgType type, const QMessageLogContext& context, const QString& msg)
 {
+    Q_UNUSED(context);
+
     switch (type) {
     case QtDebugMsg:
         break;
     case QtWarningMsg:
         break;
     case QtCriticalMsg:
-        fprintf(stderr, "Critical: %s\n", msg);
+        fprintf(stderr, "Critical: %s\n", msg.toLocal8Bit().data());
         break;
     case QtFatalMsg:
-        fprintf(stderr, "Fatal: %s\n", msg);
+        fprintf(stderr, "Fatal: %s\n", msg.toLocal8Bit().data());
         abort();
     default:
        break;
@@ -107,7 +109,7 @@ void KFileItemModelTest::init()
 {
     // The item-model tests result in a huge number of debugging
     // output from kdelibs. Only show critical and fatal messages.
-    qInstallMsgHandler(myMessageOutput);
+    qInstallMessageHandler(myMessageOutput);
 
     qRegisterMetaType<KItemRange>("KItemRange");
     qRegisterMetaType<KItemRangeList>("KItemRangeList");
@@ -141,7 +143,8 @@ void KFileItemModelTest::testDefaultRoles()
 
 void KFileItemModelTest::testDefaultSortRole()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QVERIFY(itemsInsertedSpy.isValid());
 
     QCOMPARE(m_model->sortRole(), QByteArray("text"));
 
@@ -163,7 +166,7 @@ void KFileItemModelTest::testDefaultGroupedSorting()
 
 void KFileItemModelTest::testNewItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     m_testDir->createFiles({"a.txt", "b.txt", "c.txt"});
 
@@ -177,8 +180,8 @@ void KFileItemModelTest::testNewItems()
 
 void KFileItemModelTest::testRemoveItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsRemovedSpy(m_model, &KFileItemModel::itemsRemoved);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsRemovedSpy(m_model, SIGNAL(itemsRemoved(KItemRangeList)));
 
     m_testDir->createFiles({"a.txt", "b.txt"});
     m_model->loadDirectory(m_testDir->url());
@@ -195,9 +198,9 @@ void KFileItemModelTest::testRemoveItems()
 
 void KFileItemModelTest::testDirLoadingCompleted()
 {
-    QSignalSpy loadingCompletedSpy(m_model, &KFileItemModel::directoryLoadingCompleted);
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsRemovedSpy(m_model, &KFileItemModel::itemsRemoved);
+    QSignalSpy loadingCompletedSpy(m_model, SIGNAL(directoryLoadingCompleted()));
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsRemovedSpy(m_model, SIGNAL(itemsRemoved(KItemRangeList)));
 
     m_testDir->createFiles({"a.txt", "b.txt", "c.txt"});
 
@@ -238,8 +241,10 @@ void KFileItemModelTest::testDirLoadingCompleted()
 
 void KFileItemModelTest::testSetData()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsChangedSpy(m_model, &KFileItemModel::itemsChanged);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QVERIFY(itemsInsertedSpy.isValid());
+    QSignalSpy itemsChangedSpy(m_model, SIGNAL(itemsChanged(KItemRangeList, QSet<QByteArray>)));
+    QVERIFY(itemsChangedSpy.isValid());
 
     m_testDir->createFile("a.txt");
 
@@ -291,8 +296,10 @@ void KFileItemModelTest::testSetDataWithModifiedSortRole()
     QFETCH(int, ratingIndex1);
     QFETCH(int, ratingIndex2);
 
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsMovedSpy(m_model, &KFileItemModel::itemsMoved);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QVERIFY(itemsInsertedSpy.isValid());
+    QSignalSpy itemsMovedSpy(m_model, SIGNAL(itemsMoved(KItemRange,QList<int>)));
+    QVERIFY(itemsMovedSpy.isValid());
 
     // Changing the value of a sort-role must result in
     // a reordering of the items.
@@ -344,8 +351,9 @@ void KFileItemModelTest::testSetDataWithModifiedSortRole()
 
 void KFileItemModelTest::testChangeSortRole()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsMovedSpy(m_model, &KFileItemModel::itemsMoved);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsMovedSpy(m_model, SIGNAL(itemsMoved(KItemRange,QList<int>)));
+    QVERIFY(itemsMovedSpy.isValid());
 
     QCOMPARE(m_model->sortRole(), QByteArray("text"));
 
@@ -383,8 +391,9 @@ void KFileItemModelTest::testChangeSortRole()
 
 void KFileItemModelTest::testResortAfterChangingName()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsMovedSpy(m_model, &KFileItemModel::itemsMoved);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsMovedSpy(m_model, SIGNAL(itemsMoved(KItemRange,QList<int>)));
+    QVERIFY(itemsMovedSpy.isValid());
 
     // We sort by size in a directory where all files have the same size.
     // Therefore, the files are sorted by their names.
@@ -420,7 +429,7 @@ void KFileItemModelTest::testResortAfterChangingName()
 
 void KFileItemModelTest::testModelConsistencyWhenInsertingItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     // KFileItemModel prevents that inserting a punch of items sequentially
     // results in an itemsInserted()-signal for each item. Instead internally
@@ -462,7 +471,7 @@ void KFileItemModelTest::testModelConsistencyWhenInsertingItems()
 
 void KFileItemModelTest::testItemRangeConsistencyWhenInsertingItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     m_testDir->createFiles({"B", "E", "G"});
 
@@ -501,9 +510,12 @@ void KFileItemModelTest::testItemRangeConsistencyWhenInsertingItems()
 
 void KFileItemModelTest::testExpandItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsRemovedSpy(m_model, &KFileItemModel::itemsRemoved);
-    QSignalSpy loadingCompletedSpy(m_model, &KFileItemModel::directoryLoadingCompleted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QVERIFY(itemsInsertedSpy.isValid());
+    QSignalSpy itemsRemovedSpy(m_model, SIGNAL(itemsRemoved(KItemRangeList)));
+    QVERIFY(itemsRemovedSpy.isValid());
+    QSignalSpy loadingCompletedSpy(m_model, SIGNAL(directoryLoadingCompleted()));
+    QVERIFY(loadingCompletedSpy.isValid());
 
     // Test expanding subfolders in a folder with the items "a/", "a/a/", "a/a/1", "a/a-1/", "a/a-1/1".
     // Besides testing the basic item expansion functionality, the test makes sure that
@@ -635,8 +647,9 @@ void KFileItemModelTest::testExpandItems()
 
 void KFileItemModelTest::testExpandParentItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy loadingCompletedSpy(m_model, &KFileItemModel::directoryLoadingCompleted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy loadingCompletedSpy(m_model, SIGNAL(directoryLoadingCompleted()));
+    QVERIFY(loadingCompletedSpy.isValid());
 
     // Create a tree structure of folders:
     // a 1/
@@ -715,8 +728,8 @@ void KFileItemModelTest::testExpandParentItems()
  */
 void KFileItemModelTest::testMakeExpandedItemHidden()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsRemovedSpy(m_model, &KFileItemModel::itemsRemoved);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsRemovedSpy(m_model, SIGNAL(itemsRemoved(KItemRangeList)));
 
     QSet<QByteArray> modelRoles = m_model->roles();
     modelRoles << "isExpanded" << "isExpandable" << "expandedParentsCount";
@@ -758,7 +771,7 @@ void KFileItemModelTest::testMakeExpandedItemHidden()
 
 void KFileItemModelTest::testRemoveFilteredExpandedItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     QSet<QByteArray> originalModelRoles = m_model->roles();
     QSet<QByteArray> modelRoles = originalModelRoles;
@@ -803,8 +816,9 @@ void KFileItemModelTest::testRemoveFilteredExpandedItems()
 
 void KFileItemModelTest::testSorting()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsMovedSpy(m_model, &KFileItemModel::itemsMoved);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsMovedSpy(m_model, SIGNAL(itemsMoved(KItemRange,QList<int>)));
+    QVERIFY(itemsMovedSpy.isValid());
 
     // Create some files with different sizes and modification times to check the different sorting options
     QDateTime now = QDateTime::currentDateTime();
@@ -937,7 +951,7 @@ void KFileItemModelTest::testSorting()
 
 void KFileItemModelTest::testIndexForKeyboardSearch()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     m_testDir->createFiles({"a", "aa", "Image.jpg", "Image.png", "Text", "Text1", "Text2", "Text11"});
 
@@ -987,7 +1001,7 @@ void KFileItemModelTest::testIndexForKeyboardSearch()
 
 void KFileItemModelTest::testNameFilter()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     m_testDir->createFiles({"A1", "A2", "Abc", "Bcd", "Cde"});
 
@@ -1044,8 +1058,9 @@ void KFileItemModelTest::testEmptyPath()
  */
 void KFileItemModelTest::testRefreshExpandedItem()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsChangedSpy(m_model, &KFileItemModel::itemsChanged);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsChangedSpy(m_model, SIGNAL(itemsChanged(KItemRangeList, QSet<QByteArray>)));
+    QVERIFY(itemsChangedSpy.isValid());
 
     QSet<QByteArray> modelRoles = m_model->roles();
     modelRoles << "isExpanded" << "isExpandable" << "expandedParentsCount";
@@ -1082,8 +1097,8 @@ void KFileItemModelTest::testRemoveHiddenItems()
     m_testDir->createDir("d");
     m_testDir->createFiles({".f", ".g", "h", "i"});
 
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsRemovedSpy(m_model, &KFileItemModel::itemsRemoved);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsRemovedSpy(m_model, SIGNAL(itemsRemoved(KItemRangeList)));
 
     m_model->setShowHiddenFiles(true);
     m_model->loadDirectory(m_testDir->url());
@@ -1125,8 +1140,8 @@ void KFileItemModelTest::testRemoveHiddenItems()
  */
 void KFileItemModelTest::collapseParentOfHiddenItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsRemovedSpy(m_model, &KFileItemModel::itemsRemoved);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsRemovedSpy(m_model, SIGNAL(itemsRemoved(KItemRangeList)));
 
     QSet<QByteArray> modelRoles = m_model->roles();
     modelRoles << "isExpanded" << "isExpandable" << "expandedParentsCount";
@@ -1175,8 +1190,8 @@ void KFileItemModelTest::collapseParentOfHiddenItems()
  */
 void KFileItemModelTest::removeParentOfHiddenItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsRemovedSpy(m_model, &KFileItemModel::itemsRemoved);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsRemovedSpy(m_model, SIGNAL(itemsRemoved(KItemRangeList)));
 
     QSet<QByteArray> modelRoles = m_model->roles();
     modelRoles << "isExpanded" << "isExpandable" << "expandedParentsCount";
@@ -1228,8 +1243,8 @@ void KFileItemModelTest::removeParentOfHiddenItems()
  */
 void KFileItemModelTest::testGeneralParentChildRelationships()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsRemovedSpy(m_model, &KFileItemModel::itemsRemoved);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsRemovedSpy(m_model, SIGNAL(itemsRemoved(KItemRangeList)));
 
     QSet<QByteArray> modelRoles = m_model->roles();
     modelRoles << "isExpanded" << "isExpandable" << "expandedParentsCount";
@@ -1315,9 +1330,11 @@ void KFileItemModelTest::testGeneralParentChildRelationships()
 
 void KFileItemModelTest::testNameRoleGroups()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
-    QSignalSpy itemsMovedSpy(m_model, &KFileItemModel::itemsMoved);
-    QSignalSpy groupsChangedSpy(m_model, &KFileItemModel::groupsChanged);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
+    QSignalSpy itemsMovedSpy(m_model, SIGNAL(itemsMoved(KItemRange,QList<int>)));
+    QVERIFY(itemsMovedSpy.isValid());
+    QSignalSpy groupsChangedSpy(m_model, SIGNAL(groupsChanged()));
+    QVERIFY(groupsChangedSpy.isValid());
 
     m_testDir->createFiles({"b.txt", "c.txt", "d.txt", "e.txt"});
 
@@ -1381,7 +1398,7 @@ void KFileItemModelTest::testNameRoleGroups()
 
 void KFileItemModelTest::testNameRoleGroupsWithExpandedItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     QSet<QByteArray> modelRoles = m_model->roles();
     modelRoles << "isExpanded" << "isExpandable" << "expandedParentsCount";
@@ -1419,7 +1436,7 @@ void KFileItemModelTest::testNameRoleGroupsWithExpandedItems()
 
 void KFileItemModelTest::testInconsistentModel()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     QSet<QByteArray> modelRoles = m_model->roles();
     modelRoles << "isExpanded" << "isExpandable" << "expandedParentsCount";
@@ -1475,7 +1492,7 @@ void KFileItemModelTest::testInconsistentModel()
 
 void KFileItemModelTest::testChangeRolesForFilteredItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     QSet<QByteArray> modelRoles = m_model->roles();
     modelRoles << "owner";
@@ -1572,7 +1589,7 @@ void KFileItemModelTest::testChangeSortRoleWhileFiltering()
 
 void KFileItemModelTest::testRefreshFilteredItems()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     m_testDir->createFiles({"a.txt", "b.txt", "c.jpg", "d.jpg"});
 
@@ -1601,7 +1618,7 @@ void KFileItemModelTest::testRefreshFilteredItems()
 
 void KFileItemModelTest::testCreateMimeData()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     QSet<QByteArray> modelRoles = m_model->roles();
     modelRoles << "isExpanded" << "isExpandable" << "expandedParentsCount";
@@ -1628,7 +1645,7 @@ void KFileItemModelTest::testCreateMimeData()
 
 void KFileItemModelTest::testCollapseFolderWhileLoading()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     QSet<QByteArray> modelRoles = m_model->roles();
     modelRoles << "isExpanded" << "isExpandable" << "expandedParentsCount";
@@ -1706,7 +1723,7 @@ void KFileItemModelTest::testCollapseFolderWhileLoading()
 
 void KFileItemModelTest::testDeleteFileMoreThanOnce()
 {
-    QSignalSpy itemsInsertedSpy(m_model, &KFileItemModel::itemsInserted);
+    QSignalSpy itemsInsertedSpy(m_model, SIGNAL(itemsInserted(KItemRangeList)));
 
     m_testDir->createFiles({"a.txt", "b.txt", "c.txt", "d.txt"});