summaryrefslogtreecommitdiffstats
path: root/tests/auto/installer/settings/tst_settings.cpp
diff options
context:
space:
mode:
authorTim Jenssen <tim.jenssen@digia.com>2013-04-03 16:50:35 +0200
committerTim Jenssen <tim.jenssen@digia.com>2013-04-04 10:32:35 +0200
commit546b7d16d017c9cffdff731400207177b7499488 (patch)
tree377a6c5fdee52dc32c0bf8452ec6d48359f1e626 /tests/auto/installer/settings/tst_settings.cpp
parentf6d6b61f0144c52126f0b11edf82e8660efc18c7 (diff)
parent59204c3a70b2067f8df39a57bb70a3dfb944a4b7 (diff)
Merge remote-tracking branch 'origin/1.3'
Conflicts: installerfw.pri src/libs/installer/settings.cpp tests/auto/installer/settings/tst_settings.cpp Change-Id: Idb89f22fe940a730ed03a7d10f11e1b5fa655b49
Diffstat (limited to 'tests/auto/installer/settings/tst_settings.cpp')
-rw-r--r--tests/auto/installer/settings/tst_settings.cpp31
1 files changed, 22 insertions, 9 deletions
diff --git a/tests/auto/installer/settings/tst_settings.cpp b/tests/auto/installer/settings/tst_settings.cpp
index cf61e0c9d..8db9edb11 100644
--- a/tests/auto/installer/settings/tst_settings.cpp
+++ b/tests/auto/installer/settings/tst_settings.cpp
@@ -1,9 +1,10 @@
-#include <QTest>
#include "settings.h"
#include "errors.h"
#include "repository.h"
#include <QFile>
+#include <QString>
+#include <QTest>
using namespace QInstaller;
@@ -17,13 +18,13 @@ private slots:
void loadEmptyConfig();
void loadNotExistingConfig();
void loadMalformedConfig();
- void loadUnknownElementConfig();
+ void loadUnknownElementConfigInStrictParseMode();
+ void loadUnknownElementConfigInRelaxedParseMode();
};
void tst_Settings::loadTutorialConfig()
{
- Settings settings =
- Settings::fromFileAndPrefix(":///data/tutorial_config.xml", ":///data");
+ Settings settings = Settings::fromFileAndPrefix(":///data/tutorial_config.xml", ":///data");
// specified values
QCOMPARE(settings.applicationName(), QLatin1String("Your application"));
@@ -80,8 +81,7 @@ void tst_Settings::loadTutorialConfig()
void tst_Settings::loadFullConfig()
{
QTest::ignoreMessage(QtWarningMsg, "Deprecated element 'Icon'. ");
- Settings settings =
- Settings::fromFileAndPrefix(":///data/full_config.xml", ":///data");
+ Settings settings = Settings::fromFileAndPrefix(":///data/full_config.xml", ":///data");
}
void tst_Settings::loadEmptyConfig()
@@ -127,10 +127,10 @@ void tst_Settings::loadMalformedConfig()
QFAIL("No exception thrown");
}
-void tst_Settings::loadUnknownElementConfig()
+void tst_Settings::loadUnknownElementConfigInStrictParseMode()
{
- QTest::ignoreMessage(QtDebugMsg, "create Error-Exception: \"Error in :/data/unknown_element_config.xml, line 5, "
- "column 13: Unexpected element 'unknown'.\" ");
+ QTest::ignoreMessage(QtDebugMsg, "create Error-Exception: \"Error in :/data/unknown_element_config.xml, "
+ "line 5, column 13: Unexpected element 'unknown'.\" ");
try {
Settings::fromFileAndPrefix(":/data/unknown_element_config.xml", ":/data");
} catch (const Error &error) {
@@ -141,6 +141,19 @@ void tst_Settings::loadUnknownElementConfig()
QFAIL("No exception thrown");
}
+void tst_Settings::loadUnknownElementConfigInRelaxedParseMode()
+{
+ QTest::ignoreMessage(QtWarningMsg, "\"Ignoring following settings reader error in "
+ ":/data/unknown_element_config.xml, line 5, column 13: \" ");
+ try {
+ Settings settings = Settings::fromFileAndPrefix(":/data/unknown_element_config.xml", ":/data",
+ Settings::RelaxedParseMode);
+ QCOMPARE(settings.title(), QLatin1String("Your application Installer"));
+ } catch (const Error &error) {
+ QFAIL(qPrintable(QString::fromLatin1("Got an exception in TolerantParseMode: %1").arg(error.message())));
+ }
+}
+
QTEST_MAIN(tst_Settings)
#include "tst_settings.moc"