Fixed qdir unittest rename() test to skip if run as root
authorKurt Korbatits <kurt.korbatits@nokia.com>
Wed, 29 Feb 2012 23:06:13 +0000 (09:06 +1000)
committerQt by Nokia <qt-info@nokia.com>
Thu, 1 Mar 2012 04:43:12 +0000 (05:43 +0100)
- subtest not valid if run as root so added a check and skip

Change-Id: Iae993e20f272f9303a75062ef00d22b49df5e84a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
tests/auto/corelib/io/qdir/tst_qdir.cpp

index 04967d8..ca01a1e 100644 (file)
@@ -1231,8 +1231,14 @@ void tst_QDir::rename()
     QVERIFY(!dir.rename("rename-test", "/etc/rename-test-renamed"));
 #elif !defined(Q_OS_WIN)
     // on windows this is possible - maybe make the test a bit better
+#ifdef Q_OS_UNIX
+    // not valid if run as root so skip if needed
+    if (::getuid() != 0)
+        QVERIFY(!dir.rename("rename-test", "/rename-test-renamed"));
+#else
     QVERIFY(!dir.rename("rename-test", "/rename-test-renamed"));
 #endif
+#endif
     QTest::ignoreMessage(QtWarningMsg, "QDir::rename: Empty or null file name(s)");
     QVERIFY(!dir.rename("rename-test", ""));
     QTest::ignoreMessage(QtWarningMsg, "QDir::rename: Empty or null file name(s)");