void PlacesItemModelTest::testSystemItems()
{
+ int tempDirIndex = 3;
+ if (m_hasDesktopFolder) {
+ tempDirIndex++;
+ }
+ if (m_hasDownloadsFolder) {
+ tempDirIndex++;
+ }
+
QCOMPARE(m_model->count(), m_expectedModelCount);
for (int r = 0; r < m_model->count(); r++) {
QCOMPARE(m_model->placesItem(r)->isSystemItem(), !m_model->placesItem(r)->device().isValid());
QTRY_COMPARE(itemsInsertedSpy.count(), 1);
// make sure the new place get removed
- removePlaceAfter(5);
+ removePlaceAfter(tempDirIndex);
QList<QVariant> args = itemsInsertedSpy.takeFirst();
KItemRangeList range = args.at(0).value<KItemRangeList>();
- QCOMPARE(range.first().index, 5);
+ QCOMPARE(range.first().index, tempDirIndex);
QCOMPARE(range.first().count, 1);
- QVERIFY(!m_model->placesItem(5)->isSystemItem());
- QCOMPARE(m_model->count(), 18);
+ QVERIFY(!m_model->placesItem(tempDirIndex)->isSystemItem());
+ QCOMPARE(m_model->count(), m_expectedModelCount + 1);
QTest::qWait(300);
// check if the removal signal is correct
QSignalSpy itemsRemovedSpy(m_model, &PlacesItemModel::itemsRemoved);
- m_model->deleteItem(5);
+ m_model->deleteItem(tempDirIndex);
QTRY_COMPARE(itemsRemovedSpy.count(), 1);
args = itemsRemovedSpy.takeFirst();
range = args.at(0).value<KItemRangeList>();
- QCOMPARE(range.first().index, 5);
+ QCOMPARE(range.first().index, tempDirIndex);
QCOMPARE(range.first().count, 1);
QTRY_COMPARE(m_model->count(), m_expectedModelCount);
//cancel removal (it was removed above)
- cancelPlaceRemoval(5);
+ cancelPlaceRemoval(tempDirIndex);
}
void PlacesItemModelTest::testEditBookmark()
{
+ int tempDirIndex = 3;
+ if (m_hasDesktopFolder) {
+ tempDirIndex++;
+ }
+ if (m_hasDownloadsFolder) {
+ tempDirIndex++;
+ }
+
QScopedPointer<PlacesItemModel> other(new PlacesItemModel());
createPlaceItem(QStringLiteral("Temporary Dir"), QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::TempLocation)), QString());
// make sure that the new item will be removed later
- removePlaceAfter(5);
+ removePlaceAfter(tempDirIndex);
QSignalSpy itemsChangedSply(m_model, &PlacesItemModel::itemsChanged);
void PlacesItemModelTest::testEditAfterCreation()
{
+ int tempDirIndex = 3;
+ if (m_hasDesktopFolder) {
+ tempDirIndex++;
+ }
+ if (m_hasDownloadsFolder) {
+ tempDirIndex++;
+ }
+
const QUrl tempUrl = QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::TempLocation));
QSignalSpy itemsInsertedSpy(m_model, &PlacesItemModel::itemsInserted);
QTRY_COMPARE(model->count(), m_model->count());
// make sure that the new item will be removed later
- removePlaceAfter(5);
+ removePlaceAfter(tempDirIndex);
// modify place text
PlacesItem *item = m_model->placesItem(3);
void PlacesItemModelTest::testEditMetadata()
{
+ int tempDirIndex = 3;
+ if (m_hasDesktopFolder) {
+ tempDirIndex++;
+ }
+ if (m_hasDownloadsFolder) {
+ tempDirIndex++;
+ }
+
const QUrl tempUrl = QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::TempLocation));
QSignalSpy itemsInsertedSpy(m_model, &PlacesItemModel::itemsInserted);
QTRY_COMPARE(model->count(), m_model->count());
// make sure that the new item will be removed later
- removePlaceAfter(5);
+ removePlaceAfter(tempDirIndex);
// modify place metadata
PlacesItem *item = m_model->placesItem(3);
void PlacesItemModelTest::testRefresh()
{
+ int tempDirIndex = 3;
+ if (m_hasDesktopFolder) {
+ tempDirIndex++;
+ }
+ if (m_hasDownloadsFolder) {
+ tempDirIndex++;
+ }
+
const QUrl tempUrl = QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::TempLocation));
QSignalSpy itemsInsertedSpy(m_model, &PlacesItemModel::itemsInserted);
QTRY_COMPARE(model->count(), m_model->count());
// make sure that the new item will be removed later
- removePlaceAfter(5);
+ removePlaceAfter(tempDirIndex);
- PlacesItem *item = m_model->placesItem(5);
- PlacesItem *sameItem = model->placesItem(5);
+ PlacesItem *item = m_model->placesItem(tempDirIndex);
+ PlacesItem *sameItem = model->placesItem(tempDirIndex);
QCOMPARE(item->text(), sameItem->text());
// modify place text
void PlacesItemModelTest::testDragAndDrop()
{
+ int lastIndex = 2; // last index of places group
+ if (m_hasDesktopFolder) {
+ lastIndex++;
+ }
+ if (m_hasDownloadsFolder) {
+ lastIndex++;
+ }
+
QList<QVariant> args;
KItemRangeList range;
QStringList urls = initialUrls();
// Move the home directory to the end of the places group
QMimeData *dropData = createMimeData(QList<int>() << 0);
m_model->dropMimeDataBefore(m_model->count() - 1, dropData);
- urls.move(0, 4);
+ urls.move(0, lastIndex);
delete dropData;
QTRY_COMPARE(itemsInsertedSpy.count(), 1);
range = args.at(0).value<KItemRangeList>();
QCOMPARE(range.size(), 1);
QCOMPARE(range.at(0).count, 1);
- QCOMPARE(range.at(0).index, 4);
+ QCOMPARE(range.at(0).index, lastIndex);
CHECK_PLACES_URLS(urls);
itemsRemovedSpy.clear();
// Move home directory item back to its original position
- dropData = createMimeData(QList<int>() << 4);
+ dropData = createMimeData(QList<int>() << lastIndex);
m_model->dropMimeDataBefore(0, dropData);
- urls.move(4, 0);
+ urls.move(lastIndex, 0);
delete dropData;
QTRY_COMPARE(itemsInsertedSpy.count(), 1);
range = args.at(0).value<KItemRangeList>();
QCOMPARE(range.size(), 1);
QCOMPARE(range.at(0).count, 1);
- QCOMPARE(range.at(0).index, 4);
+ QCOMPARE(range.at(0).index, lastIndex);
// insert intem in the requested position
args = itemsInsertedSpy.takeFirst();
void PlacesItemModelTest::renameAfterCreation()
{
+ int tempDirIndex = 3;
+ if (m_hasDesktopFolder) {
+ tempDirIndex++;
+ }
+ if (m_hasDownloadsFolder) {
+ tempDirIndex++;
+ }
+
const QUrl tempUrl = QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::TempLocation));
QStringList urls = initialUrls();
PlacesItemModel *model = new PlacesItemModel();
// create a new place
createPlaceItem(QStringLiteral("Temporary Dir"), tempUrl, QString());
- urls.insert(5, tempUrl.toLocalFile());
+ urls.insert(tempDirIndex, tempUrl.toLocalFile());
// make sure that the new item will be removed later
- removePlaceAfter(5);
+ removePlaceAfter(tempDirIndex);
CHECK_PLACES_URLS(urls);
QCOMPARE(model->count(), m_model->count());