summaryrefslogtreecommitdiffstats
path: root/tests/auto/corelib/io
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2014-07-07 19:29:23 -0700
committerThiago Macieira <thiago.macieira@intel.com>2015-01-16 03:11:51 +0100
commitbbded12df3a7465dc72872e69b7b34b815e7e81c (patch)
tree7a97d6ad4946a2a0f3508f3b72bade87a6ab6fd8 /tests/auto/corelib/io
parent23f663cad6a68a7af8e8adde4f25b3cae5f14b0e (diff)
Update QFileSelector to use QSysInfo better
This reduces a bit of string duplication by relying on the constants defined in qglobal.cpp and detection via uname(2), in addition to adding the Linux distribution name as a selector. Change-Id: I64a46a0fc552c399db787125b1b32aae5c50056f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Diffstat (limited to 'tests/auto/corelib/io')
-rw-r--r--tests/auto/corelib/io/qfileselector/platforms/+unix/test3 (renamed from tests/auto/corelib/io/qfileselector/platforms/+windows/test2)0
-rw-r--r--tests/auto/corelib/io/qfileselector/platforms/+windows/+winnt/test0
-rw-r--r--tests/auto/corelib/io/qfileselector/platforms/+windows/test30
-rw-r--r--tests/auto/corelib/io/qfileselector/platforms/+winnt/test20
-rw-r--r--tests/auto/corelib/io/qfileselector/platforms/test30
-rw-r--r--tests/auto/corelib/io/qfileselector/qfileselector.qrc30
-rw-r--r--tests/auto/corelib/io/qfileselector/tst_qfileselector.cpp17
7 files changed, 37 insertions, 10 deletions
diff --git a/tests/auto/corelib/io/qfileselector/platforms/+windows/test2 b/tests/auto/corelib/io/qfileselector/platforms/+unix/test3
index e69de29bb2..e69de29bb2 100644
--- a/tests/auto/corelib/io/qfileselector/platforms/+windows/test2
+++ b/tests/auto/corelib/io/qfileselector/platforms/+unix/test3
diff --git a/tests/auto/corelib/io/qfileselector/platforms/+windows/+winnt/test b/tests/auto/corelib/io/qfileselector/platforms/+windows/+winnt/test
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/auto/corelib/io/qfileselector/platforms/+windows/+winnt/test
diff --git a/tests/auto/corelib/io/qfileselector/platforms/+windows/test3 b/tests/auto/corelib/io/qfileselector/platforms/+windows/test3
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/auto/corelib/io/qfileselector/platforms/+windows/test3
diff --git a/tests/auto/corelib/io/qfileselector/platforms/+winnt/test2 b/tests/auto/corelib/io/qfileselector/platforms/+winnt/test2
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/auto/corelib/io/qfileselector/platforms/+winnt/test2
diff --git a/tests/auto/corelib/io/qfileselector/platforms/test3 b/tests/auto/corelib/io/qfileselector/platforms/test3
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/auto/corelib/io/qfileselector/platforms/test3
diff --git a/tests/auto/corelib/io/qfileselector/qfileselector.qrc b/tests/auto/corelib/io/qfileselector/qfileselector.qrc
index 8fe7b841d2..661647f933 100644
--- a/tests/auto/corelib/io/qfileselector/qfileselector.qrc
+++ b/tests/auto/corelib/io/qfileselector/qfileselector.qrc
@@ -10,6 +10,8 @@
<file>extras/+custom3/+custom4/test</file>
<file>extras/+custom3/+custom5/test</file>
<file>extras/+custom5/+custom3/test</file>
+
+ <!-- platforms/test: deepest possible selection -->
<file>platforms/test</file>
<file>platforms/+unix/+android/test</file>
<file>platforms/+unix/+blackberry/test</file>
@@ -17,18 +19,11 @@
<file>platforms/+unix/+darwin/+mac/+osx/test</file>
<file>platforms/+unix/+darwin/+mac/test</file>
<file>platforms/+unix/+darwin/test</file>
- <file>platforms/+windows/+wince/test</file>
- <file>platforms/+windows/test</file>
- <file>platforms/+windows/test2</file>
<file>platforms/+unix/+linux/test</file>
<file>platforms/+unix/test</file>
- <file>platforms/test2</file>
- <file>platforms/+android/test2</file>
- <file>platforms/+blackberry/test2</file>
- <file>platforms/+ios/test2</file>
- <file>platforms/+osx/test2</file>
- <file>platforms/+linux/test2</file>
- <file>platforms/+wince/test2</file>
+ <file>platforms/+windows/+wince/test</file>
+ <file>platforms/+windows/+winnt/test</file>
+ <file>platforms/+windows/test</file>
<file>platforms/+android/test</file>
<file>platforms/+blackberry/test</file>
<file>platforms/+ios/test</file>
@@ -37,5 +32,20 @@
<file>platforms/+mac/test</file>
<file>platforms/+linux/test</file>
<file>platforms/+wince/test</file>
+
+ <!-- platforms/test2: shallow selection for the deepest selector -->
+ <file>platforms/test2</file>
+ <file>platforms/+android/test2</file>
+ <file>platforms/+blackberry/test2</file>
+ <file>platforms/+ios/test2</file>
+ <file>platforms/+osx/test2</file>
+ <file>platforms/+linux/test2</file>
+ <file>platforms/+wince/test2</file>
+ <file>platforms/+winnt/test2</file>
+
+ <!-- platforms/test3: selection for the family only -->
+ <file>platforms/test3</file>
+ <file>platforms/+windows/test3</file>
+ <file>platforms/+unix/test3</file>
</qresource>
</RCC>
diff --git a/tests/auto/corelib/io/qfileselector/tst_qfileselector.cpp b/tests/auto/corelib/io/qfileselector/tst_qfileselector.cpp
index 26bb4189d7..831db9e0b4 100644
--- a/tests/auto/corelib/io/qfileselector/tst_qfileselector.cpp
+++ b/tests/auto/corelib/io/qfileselector/tst_qfileselector.cpp
@@ -84,8 +84,10 @@ void tst_QFileSelector::basicTest_data()
QString test("/test");// '/' is here so dir string can also be selector string
QString test2("/test2");
+ QString test3("/test3");
QString expectedPlatform1File(":/platforms");
QString expectedPlatform2File(""); //Only the last selector
+ QString expectedPlatform3File; // Only the first selector (the family)
#if defined(Q_OS_UNIX) && !defined(Q_OS_ANDROID) && !defined(Q_OS_BLACKBERRY) && \
!defined(Q_OS_DARWIN) && !defined(Q_OS_LINUX)
/* We are only aware of specific unixes, and do not have test files for any of the others.
@@ -96,14 +98,26 @@ void tst_QFileSelector::basicTest_data()
+ QString("unix/test");
expectedPlatform2File = QString(":/platforms/test2");
#else
+ QString distributionName;
+# if (defined(Q_OS_LINUX) && !defined(Q_OS_ANDROID)) || defined(Q_OS_FREEBSD)
+ distributionName = QSysInfo::productType();
+# endif
foreach (const QString &selector, QFileSelectorPrivate::platformSelectors()) {
+ // skip the Linux distribution name (if any) since we don't have files for them
+ if (selector == distributionName)
+ continue;
+
expectedPlatform1File = expectedPlatform1File + QLatin1Char('/') + QLatin1Char(selectorIndicator)
+ selector;
expectedPlatform2File = selector;
+ if (expectedPlatform3File.isNull())
+ expectedPlatform3File = selector;
}
expectedPlatform1File += test;
expectedPlatform2File = QLatin1String(":/platforms/") + QLatin1Char(selectorIndicator)
+ expectedPlatform2File + test2;
+ expectedPlatform3File = QLatin1String(":/platforms/") + QLatin1Char(selectorIndicator)
+ + expectedPlatform3File + test3;
#endif
QTest::newRow("platform1") << QString(":/platforms/test") << QStringList()
@@ -112,6 +126,9 @@ void tst_QFileSelector::basicTest_data()
QTest::newRow("platform2") << QString(":/platforms/test2") << QStringList()
<< expectedPlatform2File;
+ QTest::newRow("platform3") << QString(":/platforms/test3") << QStringList()
+ << expectedPlatform3File;
+
QString resourceTestPath(":/extras/test");
QString custom1("custom1");
QTest::newRow("custom1-noselector") << resourceTestPath << QStringList()