aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/qqmlsettings
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/qml/qqmlsettings')
-rw-r--r--tests/auto/qml/qqmlsettings/tst_qqmlsettings.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/auto/qml/qqmlsettings/tst_qqmlsettings.cpp b/tests/auto/qml/qqmlsettings/tst_qqmlsettings.cpp
index 897450823c..7b5ed5e236 100644
--- a/tests/auto/qml/qqmlsettings/tst_qqmlsettings.cpp
+++ b/tests/auto/qml/qqmlsettings/tst_qqmlsettings.cpp
@@ -65,6 +65,7 @@ private slots:
void aliases();
void categories();
void siblings();
+ void initial();
};
class CppObject : public QObject
@@ -579,6 +580,23 @@ void tst_QQmlSettings::siblings()
QCOMPARE(settings.value("alias2").toString(), QStringLiteral("value2"));
}
+void tst_QQmlSettings::initial()
+{
+ QSettings qs;
+ qs.setValue("value", QStringLiteral("initial"));
+ qs.sync();
+
+ QQmlEngine engine;
+ QQmlComponent component(&engine);
+ component.setData("import Qt.labs.settings 1.0; Settings { property var value }", QUrl());
+ QScopedPointer<QObject> settings(component.create());
+ QVERIFY(settings.data());
+
+ // verify that the initial value from QSettings gets properly loaded
+ // even if no initial value is set in QML
+ QCOMPARE(settings->property("value").toString(), QStringLiteral("initial"));
+}
+
QTEST_MAIN(tst_QQmlSettings)
#include "tst_qqmlsettings.moc"