summaryrefslogtreecommitdiffstats
path: root/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp')
-rw-r--r--tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp37
1 files changed, 24 insertions, 13 deletions
diff --git a/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp b/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp
index 7af62cb2a1..ed34c67aad 100644
--- a/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp
+++ b/tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp
@@ -88,6 +88,7 @@ public:
virtual ~tst_QFileDialog2();
public slots:
+ void initTestCase();
void init();
void cleanup();
@@ -135,13 +136,13 @@ private slots:
void dontShowCompleterOnRoot();
private:
- QByteArray userSettings;
+ void cleanupSettingsFile();
+
QTemporaryDir tempDir;
};
tst_QFileDialog2::tst_QFileDialog2()
- : userSettings()
- , tempDir(QDir::tempPath() + "/tst_qfiledialog2.XXXXXX")
+ : tempDir(QDir::tempPath() + "/tst_qfiledialog2.XXXXXX")
{
#if defined(Q_OS_WINCE)
qApp->setAutoMaximizeThreshold(-1);
@@ -152,17 +153,29 @@ tst_QFileDialog2::~tst_QFileDialog2()
{
}
-void tst_QFileDialog2::init()
+void tst_QFileDialog2::cleanupSettingsFile()
{
- QVERIFY(tempDir.isValid());
-
- // Save the developers settings so they don't get mad when their sidebar folders are gone.
+ // clean up the sidebar between each test
QSettings settings(QSettings::UserScope, QLatin1String("QtProject"));
- settings.beginGroup(QLatin1String("Qt"));
- userSettings = settings.value(QLatin1String("filedialog")).toByteArray();
+ settings.beginGroup(QLatin1String("FileDialog"));
+ settings.remove(QString());
+ settings.endGroup();
+ settings.beginGroup(QLatin1String("Qt")); // Compatibility settings
settings.remove(QLatin1String("filedialog"));
+ settings.endGroup();
+}
+
+void tst_QFileDialog2::initTestCase()
+{
+ QVERIFY(tempDir.isValid());
+ QStandardPaths::setTestModeEnabled(true);
+ cleanupSettingsFile();
+}
- // populate it with some default settings
+void tst_QFileDialog2::init()
+{
+ QFileDialogPrivate::setLastVisitedDirectory(QUrl());
+ // populate the sidebar with some default settings
QNonNativeFileDialog fd;
#if defined(Q_OS_WINCE)
QTest::qWait(1000);
@@ -171,9 +184,7 @@ void tst_QFileDialog2::init()
void tst_QFileDialog2::cleanup()
{
- QSettings settings(QSettings::UserScope, QLatin1String("QtProject"));
- settings.beginGroup(QLatin1String("Qt"));
- settings.setValue(QLatin1String("filedialog"), userSettings);
+ cleanupSettingsFile();
}
#ifdef QT_BUILD_INTERNAL