summaryrefslogtreecommitdiffstats
path: root/tests/auto/corelib/io/qdir
diff options
context:
space:
mode:
authorRohan McGovern <rohan.mcgovern@nokia.com>2011-11-24 10:36:10 +1000
committerQt by Nokia <qt-info@nokia.com>2011-12-01 09:12:52 +0100
commit3385fb91e1e55e1bfa1f78dfb8ce2e9f3fdaedef (patch)
treeb77bb527bf3a21dc95a317248b2640c73751f629 /tests/auto/corelib/io/qdir
parent13eba9ddf47d570fc4562c20fcfbacd1dfa4a61a (diff)
Fixed installation of corelib tests
In .pro files, removed wince/symbian-specific DEPLOYMENT cases and replaced them with TESTDATA where appropriate. In .cpp files, removed SRCDIR and relative paths to testdata and replaced them with the QFINDTESTDATA macro where appropriate. Modified test helper apps/libs to install themselves under the test they relate to. This change allows corelib tests to be correctly installed, along with their testdata, via `make install'. Change-Id: I5e202e2f3b577af7e39072d5c9fe13e0ca125304 Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Diffstat (limited to 'tests/auto/corelib/io/qdir')
-rw-r--r--tests/auto/corelib/io/qdir/qdir.pro9
-rw-r--r--tests/auto/corelib/io/qdir/tst_qdir.cpp280
2 files changed, 128 insertions, 161 deletions
diff --git a/tests/auto/corelib/io/qdir/qdir.pro b/tests/auto/corelib/io/qdir/qdir.pro
index c26262e826..14f2d8812a 100644
--- a/tests/auto/corelib/io/qdir/qdir.pro
+++ b/tests/auto/corelib/io/qdir/qdir.pro
@@ -4,11 +4,4 @@ QT = core testlib
SOURCES = tst_qdir.cpp
RESOURCES += qdir.qrc
-wince* {
- DirFiles.files = testdir testData searchdir resources entrylist types tst_qdir.cpp
- DirFiles.path = .
- DEPLOYMENT += DirFiles
- DEFINES += SRCDIR=\\\"\\\"
-} else {
- DEFINES += SRCDIR=\\\"$$PWD/\\\"
-}
+TESTDATA += testdir testData searchdir resources entrylist types tst_qdir.cpp
diff --git a/tests/auto/corelib/io/qdir/tst_qdir.cpp b/tests/auto/corelib/io/qdir/tst_qdir.cpp
index d6944eada8..fc63d6ef67 100644
--- a/tests/auto/corelib/io/qdir/tst_qdir.cpp
+++ b/tests/auto/corelib/io/qdir/tst_qdir.cpp
@@ -75,6 +75,8 @@ class tst_QDir : public QObject
Q_OBJECT
private slots:
+ void init();
+
void getSetCheck();
void construction();
@@ -184,8 +186,21 @@ private slots:
void isRelative();
void isReadable();
+
+private:
+ QString m_dataPath;
};
+void tst_QDir::init()
+{
+ // Directory under which testdata can be found.
+ m_dataPath = QFileInfo(QFINDTESTDATA("testData")).absolutePath();
+ QVERIFY2(!m_dataPath.isEmpty(), "test data not found");
+
+ // Some tests want to use "." as relative path to data.
+ QVERIFY2(QDir::setCurrent(m_dataPath), qPrintable("Could not chdir to " + m_dataPath));
+}
+
// Testing get/set functions
void tst_QDir::getSetCheck()
{
@@ -328,8 +343,8 @@ void tst_QDir::exists_data()
QTest::newRow("resource0") << QString(":/tst_qdir/") << true;
QTest::newRow("resource1") << QString(":/I/Do_not_expect_this_resource_to_exist/") << false;
- QTest::newRow("simple dir") << SRCDIR "resources" << true;
- QTest::newRow("simple dir with slash") << SRCDIR "resources/" << true;
+ QTest::newRow("simple dir") << (m_dataPath + "/resources") << true;
+ QTest::newRow("simple dir with slash") << (m_dataPath + "/resources/") << true;
#if (defined(Q_OS_WIN) && !defined(Q_OS_WINCE))
QTest::newRow("unc 1") << "//" + QtNetworkSettings::winServerName() << true;
QTest::newRow("unc 2") << "//" + QtNetworkSettings::winServerName() + "/" << true;
@@ -438,19 +453,19 @@ void tst_QDir::entryList_data()
QTest::addColumn<int>("filterspec");
QTest::addColumn<int>("sortspec");
QTest::addColumn<QStringList>("expected");
- QTest::newRow("spaces1") << SRCDIR "testdir/spaces" << QStringList("*. bar")
+ QTest::newRow("spaces1") << (m_dataPath + "/testdir/spaces") << QStringList("*. bar")
<< (int)(QDir::NoFilter) << (int)(QDir::NoSort)
<< QStringList("foo. bar"); // notice how spaces5 works
- QTest::newRow("spaces2") << SRCDIR "testdir/spaces" << QStringList("*.bar")
+ QTest::newRow("spaces2") << (m_dataPath + "/testdir/spaces") << QStringList("*.bar")
<< (int)(QDir::NoFilter) << (int)(QDir::NoSort)
<< QStringList("foo.bar");
- QTest::newRow("spaces3") << SRCDIR "testdir/spaces" << QStringList("foo.*")
+ QTest::newRow("spaces3") << (m_dataPath + "/testdir/spaces") << QStringList("foo.*")
<< (int)(QDir::NoFilter) << (int)(QDir::NoSort)
<< QString("foo. bar,foo.bar").split(',');
- QTest::newRow("files1") << SRCDIR "testdir/dir" << QString("*r.cpp *.pro").split(" ")
+ QTest::newRow("files1") << (m_dataPath + "/testdir/dir") << QString("*r.cpp *.pro").split(" ")
<< (int)(QDir::NoFilter) << (int)(QDir::NoSort)
<< QString("qdir.pro,qrc_qdir.cpp,tst_qdir.cpp").split(',');
- QTest::newRow("testdir1") << SRCDIR "testdir" << QStringList()
+ QTest::newRow("testdir1") << (m_dataPath + "/testdir") << QStringList()
<< (int)(QDir::AllDirs) << (int)(QDir::NoSort)
<< QString(".,..,dir,spaces").split(',');
QTest::newRow("resources1") << QString(":/tst_qdir/resources/entryList") << QStringList("*.data")
@@ -460,107 +475,107 @@ void tst_QDir::entryList_data()
<< (int)(QDir::Files) << (int)(QDir::NoSort)
<< QString("file1.data,file2.data,file3.data").split(',');
- QTest::newRow("nofilter") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("nofilter") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::NoFilter) << int(QDir::Name)
<< filterLinks(QString(".,..,directory,file,linktodirectory.lnk,linktofile.lnk,writable").split(','));
- QTest::newRow("QDir::AllEntries") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::AllEntries") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::AllEntries) << int(QDir::Name)
<< filterLinks(QString(".,..,directory,file,linktodirectory.lnk,linktofile.lnk,writable").split(','));
- QTest::newRow("QDir::Files") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::Files") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::Files) << int(QDir::Name)
<< filterLinks(QString("file,linktofile.lnk,writable").split(','));
- QTest::newRow("QDir::Dirs") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::Dirs") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::Dirs) << int(QDir::Name)
<< filterLinks(QString(".,..,directory,linktodirectory.lnk").split(','));
- QTest::newRow("QDir::Dirs | QDir::NoDotAndDotDot") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::Dirs | QDir::NoDotAndDotDot") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::Dirs | QDir::NoDotAndDotDot) << int(QDir::Name)
<< filterLinks(QString("directory,linktodirectory.lnk").split(','));
- QTest::newRow("QDir::AllDirs") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::AllDirs") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::AllDirs) << int(QDir::Name)
<< filterLinks(QString(".,..,directory,linktodirectory.lnk").split(','));
- QTest::newRow("QDir::AllDirs | QDir::Dirs") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::AllDirs | QDir::Dirs") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::AllDirs | QDir::Dirs) << int(QDir::Name)
<< filterLinks(QString(".,..,directory,linktodirectory.lnk").split(','));
- QTest::newRow("QDir::AllDirs | QDir::Files") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::AllDirs | QDir::Files") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::AllDirs | QDir::Files) << int(QDir::Name)
<< filterLinks(QString(".,..,directory,file,linktodirectory.lnk,linktofile.lnk,writable").split(','));
- QTest::newRow("QDir::AllEntries | QDir::NoSymLinks") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::AllEntries | QDir::NoSymLinks") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::AllEntries | QDir::NoSymLinks) << int(QDir::Name)
<< filterLinks(QString(".,..,directory,file,writable").split(','));
- QTest::newRow("QDir::AllEntries | QDir::NoSymLinks | QDir::NoDotAndDotDot") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::AllEntries | QDir::NoSymLinks | QDir::NoDotAndDotDot") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::AllEntries | QDir::NoSymLinks | QDir::NoDotAndDotDot) << int(QDir::Name)
<< filterLinks(QString("directory,file,writable").split(','));
- QTest::newRow("QDir::Files | QDir::NoSymLinks") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::Files | QDir::NoSymLinks") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::Files | QDir::NoSymLinks) << int(QDir::Name)
<< filterLinks(QString("file,writable").split(','));
- QTest::newRow("QDir::Dirs | QDir::NoSymLinks") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::Dirs | QDir::NoSymLinks") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::Dirs | QDir::NoSymLinks) << int(QDir::Name)
<< filterLinks(QString(".,..,directory").split(','));
- QTest::newRow("QDir::Drives | QDir::Files | QDir::NoDotAndDotDot") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::Drives | QDir::Files | QDir::NoDotAndDotDot") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::Drives | QDir::Files | QDir::NoDotAndDotDot) << int(QDir::Name)
<< filterLinks(QString("file,linktofile.lnk,writable").split(','));
- QTest::newRow("QDir::System") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::System") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::System) << int(QDir::Name)
<< filterLinks(QStringList("brokenlink.lnk"));
- QTest::newRow("QDir::Hidden") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::Hidden") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::Hidden) << int(QDir::Name)
<< QStringList();
- QTest::newRow("QDir::System | QDir::Hidden") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::System | QDir::Hidden") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::System | QDir::Hidden) << int(QDir::Name)
<< filterLinks(QStringList("brokenlink.lnk"));
- QTest::newRow("QDir::AllDirs | QDir::NoSymLinks") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::AllDirs | QDir::NoSymLinks") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::AllDirs | QDir::NoSymLinks) << int(QDir::Name)
<< filterLinks(QString(".,..,directory").split(','));
- QTest::newRow("QDir::AllEntries | QDir::Hidden | QDir::System") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::AllEntries | QDir::Hidden | QDir::System") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::AllEntries | QDir::Hidden | QDir::System) << int(QDir::Name)
<< filterLinks(QString(".,..,brokenlink.lnk,directory,file,linktodirectory.lnk,linktofile.lnk,writable").split(','));
- QTest::newRow("QDir::AllEntries | QDir::Readable") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::AllEntries | QDir::Readable") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::AllEntries | QDir::Readable) << int(QDir::Name)
<< filterLinks(QString(".,..,directory,file,linktodirectory.lnk,linktofile.lnk,writable").split(','));
- QTest::newRow("QDir::AllEntries | QDir::Writable") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::AllEntries | QDir::Writable") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::AllEntries | QDir::Writable) << int(QDir::Name)
<< filterLinks(QString(".,..,directory,linktodirectory.lnk,writable").split(','));
- QTest::newRow("QDir::Files | QDir::Readable") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::Files | QDir::Readable") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::Files | QDir::Readable) << int(QDir::Name)
<< filterLinks(QString("file,linktofile.lnk,writable").split(','));
- QTest::newRow("QDir::Dirs | QDir::Readable") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("QDir::Dirs | QDir::Readable") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::Dirs | QDir::Readable) << int(QDir::Name)
<< filterLinks(QString(".,..,directory,linktodirectory.lnk").split(','));
- QTest::newRow("Namefilters b*") << SRCDIR "entrylist/" << QStringList("d*")
+ QTest::newRow("Namefilters b*") << (m_dataPath + "/entrylist/") << QStringList("d*")
<< int(QDir::NoFilter) << int(QDir::Name)
<< filterLinks(QString("directory").split(','));
- QTest::newRow("Namefilters f*") << SRCDIR "entrylist/" << QStringList("f*")
+ QTest::newRow("Namefilters f*") << (m_dataPath + "/entrylist/") << QStringList("f*")
<< int(QDir::NoFilter) << int(QDir::Name)
<< filterLinks(QString("file").split(','));
- QTest::newRow("Namefilters link*") << SRCDIR "entrylist/" << QStringList("link*")
+ QTest::newRow("Namefilters link*") << (m_dataPath + "/entrylist/") << QStringList("link*")
<< int(QDir::NoFilter) << int(QDir::Name)
<< filterLinks(QString("linktodirectory.lnk,linktofile.lnk").split(','));
- QTest::newRow("Namefilters *to*") << SRCDIR "entrylist/" << QStringList("*to*")
+ QTest::newRow("Namefilters *to*") << (m_dataPath + "/entrylist/") << QStringList("*to*")
<< int(QDir::NoFilter) << int(QDir::Name)
<< filterLinks(QString("directory,linktodirectory.lnk,linktofile.lnk").split(','));
- QTest::newRow("Sorting QDir::Name") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("Sorting QDir::Name") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::NoFilter) << int(QDir::Name)
<< filterLinks(QString(".,..,directory,file,linktodirectory.lnk,linktofile.lnk,writable").split(','));
- QTest::newRow("Sorting QDir::Name | QDir::Reversed") << SRCDIR "entrylist/" << QStringList("*")
+ QTest::newRow("Sorting QDir::Name | QDir::Reversed") << (m_dataPath + "/entrylist/") << QStringList("*")
<< int(QDir::NoFilter) << int(QDir::Name | QDir::Reversed)
<< filterLinks(QString("writable,linktofile.lnk,linktodirectory.lnk,file,directory,..,.").split(','));
- QTest::newRow("Sorting QDir::Type") << SRCDIR "types/" << QStringList("*")
+ QTest::newRow("Sorting QDir::Type") << (m_dataPath + "/types/") << QStringList("*")
<< int(QDir::NoFilter) << int(QDir::Type)
<< QString(".,..,a,b,c,d,e,f,a.a,b.a,c.a,d.a,e.a,f.a,a.b,b.b,c.b,d.b,e.b,f.b,a.c,b.c,c.c,d.c,e.c,f.c").split(',');
- QTest::newRow("Sorting QDir::Type | QDir::Reversed") << SRCDIR "types/" << QStringList("*")
+ QTest::newRow("Sorting QDir::Type | QDir::Reversed") << (m_dataPath + "/types/") << QStringList("*")
<< int(QDir::NoFilter) << int(QDir::Type | QDir::Reversed)
<< QString("f.c,e.c,d.c,c.c,b.c,a.c,f.b,e.b,d.b,c.b,b.b,a.b,f.a,e.a,d.a,c.a,b.a,a.a,f,e,d,c,b,a,..,.").split(',');
- QTest::newRow("Sorting QDir::Type | QDir::DirsLast") << SRCDIR "types/" << QStringList("*")
+ QTest::newRow("Sorting QDir::Type | QDir::DirsLast") << (m_dataPath + "/types/") << QStringList("*")
<< int(QDir::NoFilter) << int(QDir::Type | QDir::DirsLast)
<< QString("a,b,c,a.a,b.a,c.a,a.b,b.b,c.b,a.c,b.c,c.c,.,..,d,e,f,d.a,e.a,f.a,d.b,e.b,f.b,d.c,e.c,f.c").split(',');
- QTest::newRow("Sorting QDir::Type | QDir::DirsFirst") << SRCDIR "types/" << QStringList("*")
+ QTest::newRow("Sorting QDir::Type | QDir::DirsFirst") << (m_dataPath + "/types/") << QStringList("*")
<< int(QDir::NoFilter) << int(QDir::Type | QDir::DirsFirst)
<< QString(".,..,d,e,f,d.a,e.a,f.a,d.b,e.b,f.b,d.c,e.c,f.c,a,b,c,a.a,b.a,c.a,a.b,b.b,c.b,a.c,b.c,c.c").split(',');
- QTest::newRow("Sorting QDir::Size") << SRCDIR "types/" << QStringList("*")
+ QTest::newRow("Sorting QDir::Size") << (m_dataPath + "/types/") << QStringList("*")
<< int(QDir::AllEntries|QDir::NoDotAndDotDot) << int(QDir::Size | QDir::DirsFirst)
<< QString("d,d.a,d.b,d.c,e,e.a,e.b,e.c,f,f.a,f.b,f.c,c.a,c.b,c.c,b.a,b.c,b.b,a.c,a.b,a.a,a,b,c").split(',');
- QTest::newRow("Sorting QDir::Size | QDir::Reversed") << SRCDIR "types/" << QStringList("*")
+ QTest::newRow("Sorting QDir::Size | QDir::Reversed") << (m_dataPath + "/types/") << QStringList("*")
<< int(QDir::AllEntries|QDir::NoDotAndDotDot) << int(QDir::Size | QDir::Reversed | QDir::DirsLast)
<< QString("c,b,a,a.a,a.b,a.c,b.b,b.c,b.a,c.c,c.b,c.a,f.c,f.b,f.a,f,e.c,e.b,e.a,e,d.c,d.b,d.a,d").split(',');
}
@@ -573,14 +588,15 @@ void tst_QDir::entryList()
QFETCH(int, sortspec);
QFETCH(QStringList, expected);
- QFile(SRCDIR "entrylist/writable").open(QIODevice::ReadWrite);
- QFile(SRCDIR "entrylist/file").setPermissions(QFile::ReadOwner | QFile::ReadUser);
- QFile::remove(SRCDIR "entrylist/linktofile");
- QFile::remove(SRCDIR "entrylist/linktodirectory");
- QFile::remove(SRCDIR "entrylist/linktofile.lnk");
- QFile::remove(SRCDIR "entrylist/linktodirectory.lnk");
- QFile::remove(SRCDIR "entrylist/brokenlink.lnk");
- QFile::remove(SRCDIR "entrylist/brokenlink");
+ QString entrylistPath = (m_dataPath + "/entrylist/");
+ QFile(entrylistPath + "writable").open(QIODevice::ReadWrite);
+ QFile(entrylistPath + "file").setPermissions(QFile::ReadOwner | QFile::ReadUser);
+ QFile::remove(entrylistPath + "linktofile");
+ QFile::remove(entrylistPath + "linktodirectory");
+ QFile::remove(entrylistPath + "linktofile.lnk");
+ QFile::remove(entrylistPath + "linktodirectory.lnk");
+ QFile::remove(entrylistPath + "brokenlink.lnk");
+ QFile::remove(entrylistPath + "brokenlink");
// WinCE does not have . and .. in the directory listing
#if defined(Q_OS_WINCE)
@@ -591,13 +607,14 @@ void tst_QDir::entryList()
#ifndef Q_NO_SYMLINKS
#if defined(Q_OS_WIN)
// ### Sadly, this is a platform difference right now.
- QFile::link(SRCDIR "entryList/file", SRCDIR "entrylist/linktofile.lnk");
- QFile::link(SRCDIR "entryList/directory", SRCDIR "entrylist/linktodirectory.lnk");
- QFile::link(SRCDIR "entryList/nothing", SRCDIR "entrylist/brokenlink.lnk");
+ // Note we are using capital L in entryList on one side here, to test case-insensitivity
+ QFile::link((m_dataPath + "/entryList/") + "file", entrylistPath + "linktofile.lnk");
+ QFile::link((m_dataPath + "/entryList/") + "directory", entrylistPath + "linktodirectory.lnk");
+ QFile::link((m_dataPath + "/entryList/") + "nothing"), entrylistPath + "brokenlink.lnk");
#else
- QFile::link("file", SRCDIR "entrylist/linktofile.lnk");
- QFile::link("directory", SRCDIR "entrylist/linktodirectory.lnk");
- QFile::link("nothing", SRCDIR "entrylist/brokenlink.lnk");
+ QFile::link("file", entrylistPath + "linktofile.lnk");
+ QFile::link("directory", entrylistPath + "linktodirectory.lnk");
+ QFile::link("nothing", entrylistPath + "brokenlink.lnk");
#endif
#endif //Q_NO_SYMLINKS
@@ -625,13 +642,13 @@ void tst_QDir::entryList()
QCOMPARE(actual.count(), expected.count());
}
- QFile::remove(SRCDIR "entrylist/writable");
- QFile::remove(SRCDIR "entrylist/linktofile");
- QFile::remove(SRCDIR "entrylist/linktodirectory");
- QFile::remove(SRCDIR "entrylist/linktofile.lnk");
- QFile::remove(SRCDIR "entrylist/linktodirectory.lnk");
- QFile::remove(SRCDIR "entrylist/brokenlink.lnk");
- QFile::remove(SRCDIR "entrylist/brokenlink");
+ QFile::remove(entrylistPath + "writable");
+ QFile::remove(entrylistPath + "linktofile");
+ QFile::remove(entrylistPath + "linktodirectory");
+ QFile::remove(entrylistPath + "linktofile.lnk");
+ QFile::remove(entrylistPath + "linktodirectory.lnk");
+ QFile::remove(entrylistPath + "brokenlink.lnk");
+ QFile::remove(entrylistPath + "brokenlink");
}
void tst_QDir::entryListSimple_data()
@@ -641,11 +658,11 @@ void tst_QDir::entryListSimple_data()
QTest::newRow("data2") << "do_not_expect_this_path_to_exist/" << 0;
#if defined(Q_OS_WINCE)
- QTest::newRow("simple dir") << SRCDIR "resources" << 0;
- QTest::newRow("simple dir with slash") << SRCDIR "resources/" << 0;
+ QTest::newRow("simple dir") << (m_dataPath + "/resources") << 0;
+ QTest::newRow("simple dir with slash") << (m_dataPath + "/resources/") << 0;
#else
- QTest::newRow("simple dir") << SRCDIR "resources" << 2;
- QTest::newRow("simple dir with slash") << SRCDIR "resources/" << 2;
+ QTest::newRow("simple dir") << (m_dataPath + "/resources") << 2;
+ QTest::newRow("simple dir with slash") << (m_dataPath + "/resources/") << 2;
#endif
#if defined(Q_OS_WIN) && !defined(Q_OS_WINCE)
@@ -721,27 +738,14 @@ void tst_QDir::canonicalPath_data()
{
QTest::addColumn<QString>("path");
QTest::addColumn<QString>("canonicalPath");
- QString appPath = SRCDIR;
- if (appPath.isEmpty())
- appPath = QCoreApplication::instance()->applicationDirPath();
- else
- appPath.chop(1); // remove the ending slash
-#if defined Q_OS_WIN
- if (appPath.endsWith("release", Qt::CaseInsensitive) || appPath.endsWith("debug", Qt::CaseInsensitive)) {
- QDir appDir(appPath);
- QVERIFY(appDir.cdUp());
- appPath = appDir.absolutePath();
- }
-#endif
-
- QTest::newRow("relative") << "." << appPath;
- QTest::newRow("relativeSubDir") << "./testData/../testData" << appPath + "/testData";
+ QTest::newRow("relative") << "." << m_dataPath;
+ QTest::newRow("relativeSubDir") << "./testData/../testData" << m_dataPath + "/testData";
#ifndef Q_OS_WIN
- QTest::newRow("absPath") << appPath + "/testData/../testData" << appPath + "/testData";
+ QTest::newRow("absPath") << m_dataPath + "/testData/../testData" << m_dataPath + "/testData";
#else
- QTest::newRow("absPath") << appPath + "\\testData\\..\\testData" << appPath + "/testData";
+ QTest::newRow("absPath") << m_dataPath + "\\testData\\..\\testData" << m_dataPath + "/testData";
#endif
QTest::newRow("nonexistant") << "testd" << QString();
@@ -768,16 +772,12 @@ void tst_QDir::canonicalPath_data()
void tst_QDir::canonicalPath()
{
- QDir srcPath;
- if (strlen(SRCDIR) > 0)
- srcPath = QDir(SRCDIR);
- else
- srcPath = QDir(".");
- if (srcPath.absolutePath() != srcPath.canonicalPath())
+ QDir dataDir(m_dataPath);
+ if (dataDir.absolutePath() != dataDir.canonicalPath())
QSKIP("This test does not work if this directory path consists of symlinks.");
QString oldpwd = QDir::currentPath();
- QDir::setCurrent(srcPath.absolutePath());
+ QDir::setCurrent(dataDir.absolutePath());
QFETCH(QString, path);
QFETCH(QString, canonicalPath);
@@ -796,37 +796,23 @@ void tst_QDir::current_data()
{
QTest::addColumn<QString>("path");
QTest::addColumn<QString>("currentDir");
- QString appPath = SRCDIR;
- if (appPath.isEmpty())
- appPath = QCoreApplication::instance()->applicationDirPath();
- else
- appPath.chop(1); // remove the ending slash
-#if defined Q_OS_WIN
- if (appPath.endsWith("release", Qt::CaseInsensitive))
- appPath = appPath.left(appPath.length()-8);
- else if (appPath.endsWith("debug", Qt::CaseInsensitive))
- appPath = appPath.left(appPath.length()-6);
-#endif
- QTest::newRow("startup") << QString() << appPath;
- QTest::newRow("relPath") << "testData" << appPath + "/testData";
+ QTest::newRow("startup") << QString() << m_dataPath;
+ QTest::newRow("relPath") << "testData" << m_dataPath + "/testData";
#ifndef Q_OS_WIN
- QTest::newRow("absPath") << appPath + "/testData" << appPath + "/testData";
+ QTest::newRow("absPath") << m_dataPath + "/testData" << m_dataPath + "/testData";
#else
- QTest::newRow("absPath") << appPath + "\\testData" << appPath + "/testData";
+ QTest::newRow("absPath") << m_dataPath + "\\testData" << m_dataPath + "/testData";
#endif
QTest::newRow("nonexistant") << "testd" << QString();
- QTest::newRow("parent") << ".." << appPath.left(appPath.lastIndexOf('/'));
+ QTest::newRow("parent") << ".." << m_dataPath.left(m_dataPath.lastIndexOf('/'));
}
void tst_QDir::current()
{
QString oldDir = QDir::currentPath();
- QString appPath = SRCDIR;
- if (appPath.isEmpty())
- appPath = QCoreApplication::instance()->applicationDirPath();
- QDir::setCurrent(appPath);
+ QDir::setCurrent(m_dataPath);
QFETCH(QString, path);
QFETCH(QString, currentDir);
@@ -855,17 +841,16 @@ void tst_QDir::cd_data()
QTest::addColumn<bool>("successExpected");
QTest::addColumn<QString>("newDir");
- QString appPath = QDir::currentPath();
- int index = appPath.lastIndexOf("/");
- QTest::newRow("cdUp") << QDir::currentPath() << ".." << true << appPath.left(index==0?1:index);
- QTest::newRow("noChange") << QDir::currentPath() << "." << true << appPath;
+ int index = m_dataPath.lastIndexOf("/");
+ QTest::newRow("cdUp") << m_dataPath << ".." << true << m_dataPath.left(index==0?1:index);
+ QTest::newRow("noChange") << m_dataPath << "." << true << m_dataPath;
#if defined(Q_OS_WIN) // on windows QDir::root() is usually c:/ but cd "/" will not force it to be root
- QTest::newRow("absolute") << QDir::currentPath() << "/" << true << "/";
+ QTest::newRow("absolute") << m_dataPath << "/" << true << "/";
#else
- QTest::newRow("absolute") << QDir::currentPath() << "/" << true << QDir::root().absolutePath();
+ QTest::newRow("absolute") << m_dataPath << "/" << true << QDir::root().absolutePath();
#endif
- QTest::newRow("non existant") << "." << "../anonexistingdir" << false << QDir::currentPath();
- QTest::newRow("self") << "." << (QString("../") + QFileInfo(QDir::currentPath()).fileName()) << true << QDir::currentPath();
+ QTest::newRow("non existant") << "." << "../anonexistingdir" << false << m_dataPath;
+ QTest::newRow("self") << "." << (QString("../") + QFileInfo(m_dataPath).fileName()) << true << m_dataPath;
QTest::newRow("file") << "." << "qdir.pro" << false << "";
}
@@ -892,19 +877,13 @@ void tst_QDir::setNameFilters_data()
QTest::addColumn<QStringList>("nameFilters");
QTest::addColumn<QStringList>("expected");
- QString appPath = SRCDIR;
- if (appPath.isEmpty())
- appPath = QCoreApplication::instance()->applicationDirPath();
- if (!appPath.endsWith("/"))
- appPath.append("/");
-
- QTest::newRow("spaces1") << appPath + "testdir/spaces" << QStringList("*. bar")
+ QTest::newRow("spaces1") << m_dataPath + "/testdir/spaces" << QStringList("*. bar")
<< QStringList("foo. bar");
- QTest::newRow("spaces2") << appPath + "testdir/spaces" << QStringList("*.bar")
+ QTest::newRow("spaces2") << m_dataPath + "/testdir/spaces" << QStringList("*.bar")
<< QStringList("foo.bar");
- QTest::newRow("spaces3") << appPath + "testdir/spaces" << QStringList("foo.*")
+ QTest::newRow("spaces3") << m_dataPath + "/testdir/spaces" << QStringList("foo.*")
<< QString("foo. bar,foo.bar").split(",");
- QTest::newRow("files1") << appPath + "testdir/dir" << QString("*r.cpp *.pro").split(" ")
+ QTest::newRow("files1") << m_dataPath + "/testdir/dir" << QString("*r.cpp *.pro").split(" ")
<< QString("qdir.pro,qrc_qdir.cpp,tst_qdir.cpp").split(",");
QTest::newRow("resources1") << QString(":/tst_qdir/resources/entryList") << QStringList("*.data")
<< QString("file1.data,file2.data,file3.data").split(',');
@@ -1170,8 +1149,7 @@ void tst_QDir::exists2()
QFETCH(bool, exists);
QString oldpwd = QDir::currentPath();
- if (strlen(SRCDIR) > 0)
- QDir::setCurrent(SRCDIR);
+ QDir::setCurrent((m_dataPath + "/."));
if (path.isEmpty())
QTest::ignoreMessage(QtWarningMsg, "QDir::exists: Empty or null file name");
@@ -1223,7 +1201,7 @@ void tst_QDir::dotAndDotDot()
#if defined(Q_OS_WINCE)
QSKIP("WinCE does not have . nor ..");
#else
- QDir dir(QString(SRCDIR "testdir/"));
+ QDir dir(QString((m_dataPath + "/testdir/")));
QStringList entryList = dir.entryList(QDir::Dirs);
QCOMPARE(entryList, QStringList() << QString(".") << QString("..") << QString("dir") << QString("spaces"));
entryList = dir.entryList(QDir::Dirs | QDir::NoDotAndDotDot);
@@ -1309,26 +1287,22 @@ void tst_QDir::searchPaths_data()
QTest::addColumn<QString>("searchPaths");
QTest::addColumn<QString>("expectedAbsolutePath");
- QString srcdir = SRCDIR;
- if (srcdir.isEmpty())
- srcdir = QDir::currentPath();
- else
- srcdir.chop(1); // remove ending slash
- QString searchDir = srcdir + "/searchdir";
+ QString searchDir = (m_dataPath + "/searchdir");
+ QString srcdir = QFileInfo(searchDir).absolutePath();
// sanity
QTest::newRow("nopath") << "picker.png" << QString() << QString() << QString();
QTest::newRow("emptysearchpath") << "subdir1/picker.png" << QString() << QString() << QString();
- QTest::newRow("searchpathwithoutprefix") << SRCDIR "searchdir/subdir1/picker.png" << QString("searchpath") << QString("searchdir") << (searchDir+"/subdir1/picker.png");
+ QTest::newRow("searchpathwithoutprefix") << (m_dataPath + "/searchdir/subdir1/picker.png") << QString("searchpath") << QString("searchdir") << (searchDir+"/subdir1/picker.png");
// new
QTest::newRow("novalidsearchpath") << "searchpath:subdir1/picker.png" << QString() << QString() << QString();
QTest::newRow("invalidsearchpath") << "searchpath:subdir1/picker.png" << QString("invalid") << QString("invalid") << QString();
- QTest::newRow("onlyvalidsearchpath") << "searchpath:subdir1/picker.png" << QString("searchpath") << QString(SRCDIR "searchdir") << (searchDir+"/subdir1/picker.png");
- QTest::newRow("validandinvalidsearchpath") << "searchpath:subdir1/picker.png" << QString("invalid;searchpath") << QString("invalid;" SRCDIR "searchdir") << (searchDir+"/subdir1/picker.png");
- QTest::newRow("precedence1") << "searchpath:picker.png" << QString("invalid;searchpath") << QString("invalid;" SRCDIR "searchdir/subdir1," SRCDIR "searchdir/subdir2") << (searchDir+"/subdir1/picker.png");
- QTest::newRow("precedence2") << "searchpath:picker.png" << QString("invalid;searchpath") << QString("invalid;" SRCDIR "searchdir/subdir2," SRCDIR "searchdir/subdir1") << (searchDir+"/subdir2/picker.png");
- QTest::newRow("precedence3") << "searchpath2:picker.png" << QString("searchpath1;searchpath2") << QString(SRCDIR "searchdir/subdir1;" SRCDIR "searchdir/subdir2") << (searchDir+"/subdir2/picker.png");
+ QTest::newRow("onlyvalidsearchpath") << "searchpath:subdir1/picker.png" << QString("searchpath") << QString((m_dataPath + "/searchdir")) << (searchDir+"/subdir1/picker.png");
+ QTest::newRow("validandinvalidsearchpath") << "searchpath:subdir1/picker.png" << QString("invalid;searchpath") << ("invalid;" + (m_dataPath + "/searchdir")) << (searchDir+"/subdir1/picker.png");
+ QTest::newRow("precedence1") << "searchpath:picker.png" << QString("invalid;searchpath") << ("invalid;" + (m_dataPath + "/searchdir/subdir1") + "," + (m_dataPath + "/searchdir/subdir2")) << (searchDir+"/subdir1/picker.png");
+ QTest::newRow("precedence2") << "searchpath:picker.png" << QString("invalid;searchpath") << ("invalid;" + (m_dataPath + "/searchdir/subdir2") + "," + (m_dataPath + "/searchdir/subdir1")) << (searchDir+"/subdir2/picker.png");
+ QTest::newRow("precedence3") << "searchpath2:picker.png" << QString("searchpath1;searchpath2") << ((m_dataPath + "/searchdir/subdir1") + ";" + (m_dataPath + "/searchdir/subdir2")) << (searchDir+"/subdir2/picker.png");
// re
}
@@ -1729,8 +1703,8 @@ void tst_QDir::drives()
void tst_QDir::arrayOperator()
{
- QDir dir1(SRCDIR "entrylist/");
- QDir dir2(SRCDIR "entrylist/");
+ QDir dir1((m_dataPath + "/entrylist/"));
+ QDir dir2((m_dataPath + "/entrylist/"));
QStringList entries(dir1.entryList());
int i = dir2.count();
@@ -1753,8 +1727,8 @@ void tst_QDir::equalityOperator_data()
QTest::addColumn<int>("rightFilters");
QTest::addColumn<bool>("expected");
- QTest::newRow("same") << SRCDIR << "*.cpp" << int(QDir::Name) << int(QDir::Files)
- << SRCDIR << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ QTest::newRow("same") << (m_dataPath + "/.") << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ << (m_dataPath + "/.") << "*.cpp" << int(QDir::Name) << int(QDir::Files)
<< true;
QTest::newRow("relativepaths") << "entrylist/" << "*.cpp" << int(QDir::Name) << int(QDir::Files)
@@ -1789,16 +1763,16 @@ void tst_QDir::equalityOperator_data()
<< "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)
+ QTest::newRow("diff-filters") << (m_dataPath + "/.") << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ << m_dataPath << "*.cpp" << int(QDir::Name) << int(QDir::Dirs)
<< false;
- QTest::newRow("diff-sort") << SRCDIR << "*.cpp" << int(QDir::Name) << int(QDir::Files)
- << SRCDIR << "*.cpp" << int(QDir::Time) << int(QDir::Files)
+ QTest::newRow("diff-sort") << (m_dataPath + "/.") << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ << m_dataPath << "*.cpp" << int(QDir::Time) << int(QDir::Files)
<< false;
- QTest::newRow("diff-namefilters") << SRCDIR << "*.cpp" << int(QDir::Name) << int(QDir::Files)
- << SRCDIR << "*.jpg" << int(QDir::Name) << int(QDir::Files)
+ QTest::newRow("diff-namefilters") << (m_dataPath + "/.") << "*.cpp" << int(QDir::Name) << int(QDir::Files)
+ << m_dataPath << "*.jpg" << int(QDir::Name) << int(QDir::Files)
<< false;
}