summaryrefslogtreecommitdiffstats
path: root/tests/auto/qdir
diff options
context:
space:
mode:
authorShane Kearns <shane.kearns@accenture.com>2011-09-06 16:43:29 +0100
committerShane Kearns <shane.kearns@accenture.com>2011-09-07 13:07:35 +0100
commitad35d25e78c8252a72108a4ba931934047c4707e (patch)
tree9d1b6320c0b00dfe1c5194c62f641f3b43d2d1df /tests/auto/qdir
parent64adbd0c5775f97343afbe0e7b5fde0d70bdaedd (diff)
Merge fixes for QDir::operator==
There were two fixes in 4.8 which each fixed a part of the problem. Comparing canonical paths is more correct, but is only possible where both directories exist. If neither directory exists, then compare absolute paths instead. Changed a regression test, because /tmp is a symbolic link on MacOS. I.E. "/tmp/.." is canonically "/private" and not "/" as expected. Task-Number: QTBUG-20495 Reviewed-By: joao
Diffstat (limited to 'tests/auto/qdir')
-rw-r--r--tests/auto/qdir/tst_qdir.cpp22
1 files changed, 21 insertions, 1 deletions
diff --git a/tests/auto/qdir/tst_qdir.cpp b/tests/auto/qdir/tst_qdir.cpp
index 7e5ec79ce8..96934805e2 100644
--- a/tests/auto/qdir/tst_qdir.cpp
+++ b/tests/auto/qdir/tst_qdir.cpp
@@ -1951,10 +1951,30 @@ void tst_QDir::equalityOperator_data()
<< "." << "*.cpp" << int(QDir::Name) << int(QDir::Files)
<< true;
- QTest::newRow("QTBUG-20495-root") << QDir::rootPath() + "tmp/.." << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ //need a path in the root directory that is unlikely to be a symbolic link.
+#if defined (Q_OS_WIN)
+ QString pathinroot("c:/windows/..");
+#elif defined (Q_OS_SYMBIAN)
+ QString pathinroot("c:/data/..");
+#else
+ QString pathinroot("/sbin/..");
+#endif
+ QTest::newRow("QTBUG-20495-root") << pathinroot << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ << QDir::rootPath() << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ << true;
+
+ QTest::newRow("slashdot") << QDir::rootPath() + "." << "*.cpp" << int(QDir::Name) << int(QDir::Files)
<< QDir::rootPath() << "*.cpp" << int(QDir::Name) << int(QDir::Files)
<< true;
+ QTest::newRow("slashdotslash") << QDir::rootPath() + "./" << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ << QDir::rootPath() << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ << true;
+
+ QTest::newRow("nonexistantpaths") << "dir-that-dont-exist" << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ << "another-dir-that-dont-exist" << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ << false;
+
QTest::newRow("diff-filters") << SRCDIR << "*.cpp" << int(QDir::Name) << int(QDir::Files)
<< SRCDIR << "*.cpp" << int(QDir::Name) << int(QDir::Dirs)
<< false;