aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/qqmltranslation/tst_qqmltranslation.cpp
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@digia.com>2013-12-02 17:25:23 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-12-04 00:37:29 +0100
commit4d3a654dddbb648be97fe52c695601f6864f72a1 (patch)
treeb321371a7777d1cf44e82396c90f2fc5feb8f874 /tests/auto/qml/qqmltranslation/tst_qqmltranslation.cpp
parentcf51cdb8fb002ae3602a4c886e7c67913d77373a (diff)
Fix qsTr() in .js context
Don't assume a four characters long file name suffix (.qml) Task-number: QTBUG-32850 Change-Id: I522c06b71bf1b38f32f2947a6c06017f83eb50be Reviewed-by: Michael Brasser <michael.brasser@live.com> Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Diffstat (limited to 'tests/auto/qml/qqmltranslation/tst_qqmltranslation.cpp')
-rw-r--r--tests/auto/qml/qqmltranslation/tst_qqmltranslation.cpp47
1 files changed, 16 insertions, 31 deletions
diff --git a/tests/auto/qml/qqmltranslation/tst_qqmltranslation.cpp b/tests/auto/qml/qqmltranslation/tst_qqmltranslation.cpp
index 0e22d3cfca..01e1cf85fb 100644
--- a/tests/auto/qml/qqmltranslation/tst_qqmltranslation.cpp
+++ b/tests/auto/qml/qqmltranslation/tst_qqmltranslation.cpp
@@ -52,19 +52,32 @@ public:
tst_qqmltranslation() {}
private slots:
+ void translation_data();
void translation();
void idTranslation();
- void translationInQrc();
};
+void tst_qqmltranslation::translation_data()
+{
+ QTest::addColumn<QString>("translation");
+ QTest::addColumn<QUrl>("testFile");
+
+ QTest::newRow("qml") << QStringLiteral("qml_fr") << testFileUrl("translation.qml");
+ QTest::newRow("qrc") << QStringLiteral(":/qml_fr.qm") << QUrl("qrc:/translation.qml");
+ QTest::newRow("js") << QStringLiteral("qml_fr") << testFileUrl("jstranslation.qml");
+}
+
void tst_qqmltranslation::translation()
{
+ QFETCH(QString, translation);
+ QFETCH(QUrl, testFile);
+
QTranslator translator;
- translator.load(QLatin1String("qml_fr"), dataDirectory());
+ translator.load(translation, dataDirectory());
QCoreApplication::installTranslator(&translator);
QQmlEngine engine;
- QQmlComponent component(&engine, testFileUrl("translation.qml"));
+ QQmlComponent component(&engine, testFile);
QObject *object = component.create();
QVERIFY(object != 0);
@@ -104,34 +117,6 @@ void tst_qqmltranslation::idTranslation()
delete object;
}
-void tst_qqmltranslation::translationInQrc()
-{
- QTranslator translator;
- translator.load(":/qml_fr.qm");
- QCoreApplication::installTranslator(&translator);
-
- QQmlEngine engine;
- QQmlComponent component(&engine, QUrl("qrc:/translation.qml"));
- QObject *object = component.create();
- QVERIFY(object != 0);
-
- QCOMPARE(object->property("basic").toString(), QLatin1String("bonjour"));
- QCOMPARE(object->property("basic2").toString(), QLatin1String("au revoir"));
- QCOMPARE(object->property("basic3").toString(), QLatin1String("bonjour"));
- QCOMPARE(object->property("disambiguation").toString(), QLatin1String("salut"));
- QCOMPARE(object->property("disambiguation2").toString(), QString::fromUtf8("\xc3\xa0 plus tard"));
- QCOMPARE(object->property("disambiguation3").toString(), QLatin1String("salut"));
- QCOMPARE(object->property("noop").toString(), QLatin1String("bonjour"));
- QCOMPARE(object->property("noop2").toString(), QLatin1String("au revoir"));
- QCOMPARE(object->property("singular").toString(), QLatin1String("1 canard"));
- QCOMPARE(object->property("singular2").toString(), QLatin1String("1 canard"));
- QCOMPARE(object->property("plural").toString(), QLatin1String("2 canards"));
- QCOMPARE(object->property("plural2").toString(), QLatin1String("2 canards"));
-
- QCoreApplication::removeTranslator(&translator);
- delete object;
-}
-
QTEST_MAIN(tst_qqmltranslation)
#include "tst_qqmltranslation.moc"