Fixed findtestdata selftest on mac
authorRohan McGovern <rohan.mcgovern@nokia.com>
Wed, 11 Jan 2012 05:40:24 +0000 (15:40 +1000)
committerQt by Nokia <qt-info@nokia.com>
Thu, 12 Jan 2012 05:41:10 +0000 (06:41 +0100)
This test relies on being able to set a custom QLibraryInfo::PrefixPath
for the duration of the test.  However, the test code neglected to
account for the following behavior on mac (from "Using qt.conf"
documentation):

  On Mac OS X, the Prefix is relative to the Contents in the application
  bundle.

Change-Id: Ie9b6d5ebfe8af7d7f332e827069b60a830d6c6f2
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
tests/auto/testlib/selftests/findtestdata/findtestdata.cpp

index a0018bc..09b8634 100644 (file)
@@ -62,7 +62,11 @@ void FindTestData::initTestCase()
 {
     // verify that our qt.conf is working as expected.
     QString app_path = QCoreApplication::applicationDirPath();
-    QString install_path = app_path + "/tests";
+    QString install_path = app_path
+#ifdef Q_OS_MAC
+        + "/Contents"
+#endif
+        + "/tests";
     QVERIFY(QDir("/").mkpath(install_path));
     QVERIFY(QDir("/").mkpath(install_path + "/findtestdata"));
     QCOMPARE(QLibraryInfo::location(QLibraryInfo::TestsPath), install_path);
@@ -107,7 +111,11 @@ void FindTestData::paths()
     QVERIFY(touch(testfile_path1));
 
     // 2. at the test install path (faked via qt.conf)
-    QString testfile_path2 = app_path + "/tests/findtestdata/" TESTFILE;
+    QString testfile_path2 = app_path
+#ifdef Q_OS_MAC
+        + "/Contents"
+#endif
+        + "/tests/findtestdata/" TESTFILE;
     QVERIFY(touch(testfile_path2));
 
     // 3. at the source path (which we will fake later on)