summaryrefslogtreecommitdiffstats
path: root/tests/auto/corelib/io
diff options
context:
space:
mode:
authorDavid Faure <faure@kde.org>2011-09-28 13:32:37 +0200
committerQt by Nokia <qt-info@nokia.com>2011-09-28 14:02:08 +0200
commite316deffef68287b03f6eed6e98b5bfcd984280d (patch)
treec5298db8db7873852a1f86706b1e8a3e9588f99d /tests/auto/corelib/io
parentc7a0fd0950179ed9ae0aa1e5b02df9b6a383c709 (diff)
QTemporaryFile: Test what happens if current dir isn't writable.
No surprises, QTemporaryFile("tempXXXXXX") fails. But that is consistent with QFile::open, and it's documented, so ok. Change-Id: I04c805a242aeda8327d25be238da6120b3c90f5a Merge-request: 57 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com> Reviewed-on: http://codereview.qt-project.org/5714 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Diffstat (limited to 'tests/auto/corelib/io')
-rw-r--r--tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp b/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp
index 18b5cccaaf..75b3b50d14 100644
--- a/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp
+++ b/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp
@@ -87,6 +87,7 @@ private slots:
void fileName();
void fileNameIsEmpty();
void autoRemove();
+ void nonWritableCurrentDir();
void write();
void openCloseOpenClose();
void size();
@@ -290,6 +291,22 @@ void tst_QTemporaryFile::autoRemove()
}
+void tst_QTemporaryFile::nonWritableCurrentDir()
+{
+#ifdef Q_OS_UNIX
+ QString cwd = QDir::currentPath();
+ QDir::setCurrent("/");
+ // QTemporaryFile("tempXXXXXX") is probably a bad idea in any app
+ // where the current dir could anything...
+ QString fileName;
+ QTemporaryFile file("tempXXXXXX");
+ file.setAutoRemove(true);
+ QVERIFY(!file.open());
+ fileName = file.fileName();
+ QDir::setCurrent(cwd);
+#endif
+}
+
void tst_QTemporaryFile::write()
{
QByteArray data("OLE\nOLE\nOLE");