summaryrefslogtreecommitdiffstats
path: root/tests/auto/corelib/io/qtemporaryfile
diff options
context:
space:
mode:
authorDavid Faure <faure@kde.org>2011-12-08 15:32:27 +0100
committerQt by Nokia <qt-info@nokia.com>2011-12-08 21:12:57 +0100
commit5cb05091d2bb9eff2a2d5f1e21000df81d5113ae (patch)
treeb9e0a209e277521830411a50092ded0d8b7cb463 /tests/auto/corelib/io/qtemporaryfile
parent757ef710d8778b01decfa772227194333fe0f305 (diff)
Improve/cleanup qtemporarydir (and qtemporaryfile) unit tests
To follow the comments in the review by João Abecasis. Change-Id: Ie566705d3b4071b8628d269246aadcde4866f34f Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Diffstat (limited to 'tests/auto/corelib/io/qtemporaryfile')
-rw-r--r--tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp b/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp
index 46c0e19c9e..c713eb51d4 100644
--- a/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp
+++ b/tests/auto/corelib/io/qtemporaryfile/tst_qtemporaryfile.cpp
@@ -256,7 +256,16 @@ void tst_QTemporaryFile::autoRemove()
void tst_QTemporaryFile::nonWritableCurrentDir()
{
#ifdef Q_OS_UNIX
- QString cwd = QDir::currentPath();
+ struct ChdirOnReturn
+ {
+ ChdirOnReturn(const QString& d) : dir(d) {}
+ ~ChdirOnReturn() {
+ QDir::setCurrent(dir);
+ }
+ QString dir;
+ };
+ ChdirOnReturn cor(QDir::currentPath());
+
QDir::setCurrent("/");
// QTemporaryFile("tempXXXXXX") is probably a bad idea in any app
// where the current dir could anything...
@@ -265,7 +274,6 @@ void tst_QTemporaryFile::nonWritableCurrentDir()
file.setAutoRemove(true);
QVERIFY(!file.open());
fileName = file.fileName();
- QDir::setCurrent(cwd);
#endif
}