foreach (const KFileItem& itemToRemove, sortedItems) {
const int previousTargetIndex = targetIndex;
while (targetIndex < m_sortedItems.count()) {
- if (m_sortedItems.at(targetIndex) == itemToRemove) {
+ if (m_sortedItems.at(targetIndex).url() == itemToRemove.url()) {
break;
}
++targetIndex;
void testDefaultSortRole();
void testDefaultGroupRole();
void testNewItems();
+ void testRemoveItems();
void testModelConsistencyWhenInsertingItems();
void testItemRangeConsistencyWhenInsertingItems();
void testExpandItems();
QVERIFY(isModelConsistent());
}
+void KFileItemModelTest::testRemoveItems()
+{
+ m_testDir->createFile("a.txt");
+ m_dirLister->openUrl(m_testDir->url());
+ QVERIFY(QTest::kWaitForSignal(m_model, SIGNAL(itemsInserted(KItemRangeList)), DefaultTimeout));
+ QCOMPARE(m_model->count(), 1);
+
+ m_testDir->removeFile("a.txt");
+ m_dirLister->updateDirectory(m_testDir->url());
+ QVERIFY(QTest::kWaitForSignal(m_model, SIGNAL(itemsRemoved(KItemRangeList)), DefaultTimeout));
+ QCOMPARE(m_model->count(), 0);
+}
+
void KFileItemModelTest::testModelConsistencyWhenInsertingItems()
{
QSKIP("Temporary disabled", SkipSingle);
Q_ASSERT(QFile::exists(absolutePath));
}
+void TestDir::removeFile(const QString& path)
+{
+ QString absolutePath = path;
+ QFileInfo fileInfo(absolutePath);
+ if (!fileInfo.isAbsolute()) {
+ absolutePath = name() + path;
+ }
+ QFile::remove(absolutePath);
+}
+
void TestDir::makePathAbsoluteAndCreateParents(QString& path)
{
QFileInfo fileInfo(path);
void createFiles(const QStringList& files);
void createDir(const QString& path, const QDateTime& time = QDateTime());
+ void removeFile(const QString& path);
+
private:
void makePathAbsoluteAndCreateParents(QString& path);