QMap<QString, QDBusInterface *> m_interfacesMap;
int m_expectedModelCount = 15;
bool m_hasDesktopFolder = false;
+ bool m_hasDocumentsFolder = false;
bool m_hasDownloadsFolder = false;
void setBalooEnabled(bool enabled);
void createPlaceItem(const QString &text, const QUrl &url, const QString &icon);
void schedulePlaceRemoval(int index);
void cancelPlaceRemoval(int index);
- void removeTestUserData();
QMimeData *createMimeData(const QList<int> &indexes) const;
+ QTemporaryDir m_tempHomeDir;
};
#define CHECK_PLACES_URLS(urls) \
urls << QDir::homePath() + QStringLiteral("/Desktop");
}
+ if (m_hasDocumentsFolder) {
+ urls << QDir::homePath() + QStringLiteral("/Documents");
+ }
+
if (m_hasDownloadsFolder) {
urls << QDir::homePath() + QStringLiteral("/Downloads");
}
m_tobeRemoved.remove(index);
}
-void PlacesItemModelTest::removeTestUserData()
-{
- // user hardcoded path to avoid removal of any user personal data
- QDir dir(QStringLiteral("/home/renato/.qttest/share/placesitemmodeltest"));
- if (dir.exists()) {
- QVERIFY(dir.removeRecursively());
- }
-}
-
QMimeData *PlacesItemModelTest::createMimeData(const QList<int> &indexes) const
{
QByteArray itemData;
m_tobeRemoved.clear();
delete m_model;
m_model = nullptr;
- removeTestUserData();
}
void PlacesItemModelTest::initTestCase()
{
+ QVERIFY(m_tempHomeDir.isValid());
+ QVERIFY(qputenv("HOME", m_tempHomeDir.path().toUtf8()));
+ QVERIFY(qputenv("KDE_FORK_SLAVES", "yes"));
+
QStandardPaths::setTestModeEnabled(true);
- // remove test user data
- removeTestUserData();
const QString fakeHw = QFINDTESTDATA("data/fakecomputer.xml");
QVERIFY(!fakeHw.isEmpty());
m_expectedModelCount++;
}
+ if (QDir(QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation)).exists()) {
+ m_hasDocumentsFolder = true;
+ m_expectedModelCount++;
+ }
+
if (QDir(QStandardPaths::writableLocation(QStandardPaths::DownloadLocation)).exists()) {
m_hasDownloadsFolder = true;
m_expectedModelCount++;
{
qDeleteAll(m_interfacesMap);
QFile::remove(bookmarksFile());
-
- // Remove any previous properties file
- removeTestUserData();
}
void PlacesItemModelTest::testModelSort()
void PlacesItemModelTest::testGroups()
{
const auto groups = m_model->groups();
- int expectedGroupSize = 3;
+ int expectedRemoteIndex = 3;
if (m_hasDesktopFolder) {
- expectedGroupSize++;
+ expectedRemoteIndex++;
+ }
+ if (m_hasDocumentsFolder) {
+ expectedRemoteIndex++;
}
if (m_hasDownloadsFolder) {
- expectedGroupSize++;
+ expectedRemoteIndex++;
}
QCOMPARE(groups.size(), 6);
QCOMPARE(groups.at(0).first, 0);
QCOMPARE(groups.at(0).second.toString(), QStringLiteral("Places"));
- QCOMPARE(groups.at(1).first, expectedGroupSize);
+ QCOMPARE(groups.at(1).first, expectedRemoteIndex);
QCOMPARE(groups.at(1).second.toString(), QStringLiteral("Remote"));
- QCOMPARE(groups.at(2).first, expectedGroupSize + 2);
+ QCOMPARE(groups.at(2).first, expectedRemoteIndex + 2);
QCOMPARE(groups.at(2).second.toString(), QStringLiteral("Recently Saved"));
- QCOMPARE(groups.at(3).first, expectedGroupSize + 4);
+ QCOMPARE(groups.at(3).first, expectedRemoteIndex + 4);
QCOMPARE(groups.at(3).second.toString(), QStringLiteral("Search For"));
- QCOMPARE(groups.at(4).first, expectedGroupSize + 8);
+ QCOMPARE(groups.at(4).first, expectedRemoteIndex + 8);
QCOMPARE(groups.at(4).second.toString(), QStringLiteral("Devices"));
- QCOMPARE(groups.at(5).first, expectedGroupSize + 9);
+ QCOMPARE(groups.at(5).first, expectedRemoteIndex + 9);
QCOMPARE(groups.at(5).second.toString(), QStringLiteral("Removable Devices"));
}
if (m_hasDesktopFolder) {
tempDirIndex++;
}
+ if (m_hasDocumentsFolder) {
+ tempDirIndex++;
+ }
if (m_hasDownloadsFolder) {
tempDirIndex++;
}
if (m_hasDesktopFolder) {
tempDirIndex++;
}
+ if (m_hasDocumentsFolder) {
+ tempDirIndex++;
+ }
if (m_hasDownloadsFolder) {
tempDirIndex++;
}
if (m_hasDesktopFolder) {
tempDirIndex++;
}
+ if (m_hasDocumentsFolder) {
+ tempDirIndex++;
+ }
if (m_hasDownloadsFolder) {
tempDirIndex++;
}
if (m_hasDesktopFolder) {
tempDirIndex++;
}
+ if (m_hasDocumentsFolder) {
+ tempDirIndex++;
+ }
if (m_hasDownloadsFolder) {
tempDirIndex++;
}
if (m_hasDesktopFolder) {
tempDirIndex++;
}
+ if (m_hasDocumentsFolder) {
+ tempDirIndex++;
+ }
if (m_hasDownloadsFolder) {
tempDirIndex++;
}
if (m_hasDesktopFolder) {
tempDirIndex++;
}
+ if (m_hasDocumentsFolder) {
+ tempDirIndex++;
+ }
if (m_hasDownloadsFolder) {
tempDirIndex++;
}
if (m_hasDesktopFolder) {
lastIndex++;
}
+ if (m_hasDocumentsFolder) {
+ lastIndex++;
+ }
if (m_hasDownloadsFolder) {
lastIndex++;
}
if (m_hasDesktopFolder) {
tempDirIndex++;
}
+ if (m_hasDocumentsFolder) {
+ tempDirIndex++;
+ }
if (m_hasDownloadsFolder) {
tempDirIndex++;
}