summaryrefslogtreecommitdiffstats
path: root/tests/auto/declarative/qdeclarativefontloader
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@nokia.com>2012-05-18 11:40:41 +0200
committerQt by Nokia <qt-info@nokia.com>2012-05-21 09:45:49 +0200
commit8a711623a8e913ab547873ebce028c508d39fdbf (patch)
treee458183fc6ed3a52a90ab68e0f5704f4baead9b0 /tests/auto/declarative/qdeclarativefontloader
parent82216d2b20a61cacd07efa394a124e0d9101dd6b (diff)
QtQuick1: Fix qdeclarativefontloader test.
- Base it on QDeclarativeDataTest, getting rid of the SRCDIR defines. - Remove Symbian part. - Specify local file font URL correctly. - Remaining tests were fixed by qtbase: 4f1820e3a77b3fdda32a1b935502b187e73059cf (Implement application font loading for Windows) Task-number: QTBUG-24475 Change-Id: If04f4bc024f106ad14de1904b2f17ec0cc175962 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Diffstat (limited to 'tests/auto/declarative/qdeclarativefontloader')
-rw-r--r--tests/auto/declarative/qdeclarativefontloader/qdeclarativefontloader.pro12
-rw-r--r--tests/auto/declarative/qdeclarativefontloader/tst_qdeclarativefontloader.cpp32
2 files changed, 26 insertions, 18 deletions
diff --git a/tests/auto/declarative/qdeclarativefontloader/qdeclarativefontloader.pro b/tests/auto/declarative/qdeclarativefontloader/qdeclarativefontloader.pro
index f4537efe..5c4cb98f 100644
--- a/tests/auto/declarative/qdeclarativefontloader/qdeclarativefontloader.pro
+++ b/tests/auto/declarative/qdeclarativefontloader/qdeclarativefontloader.pro
@@ -7,15 +7,5 @@ macx:CONFIG -= app_bundle
HEADERS += ../shared/testhttpserver.h
SOURCES += tst_qdeclarativefontloader.cpp ../shared/testhttpserver.cpp
-
-symbian: {
- importFiles.files = data
- importFiles.path = .
- DEPLOYMENT += importFiles
-} else {
- DEFINES += SRCDIR=\\\"$$PWD\\\"
-}
-
+include(../shared/qdeclarativedatatest.pri)
CONFIG += parallel_test
-
-win32:CONFIG += insignificant_test # QTBUG-24475
diff --git a/tests/auto/declarative/qdeclarativefontloader/tst_qdeclarativefontloader.cpp b/tests/auto/declarative/qdeclarativefontloader/tst_qdeclarativefontloader.cpp
index ec0e705d..b883ecf1 100644
--- a/tests/auto/declarative/qdeclarativefontloader/tst_qdeclarativefontloader.cpp
+++ b/tests/auto/declarative/qdeclarativefontloader/tst_qdeclarativefontloader.cpp
@@ -38,7 +38,9 @@
** $QT_END_LICENSE$
**
****************************************************************************/
+
#include <qtest.h>
+#include <qdeclarativedatatest.h>
#include <QtTest/QSignalSpy>
#include <QtQuick1/qdeclarativeengine.h>
#include <QtQuick1/qdeclarativecomponent.h>
@@ -53,11 +55,12 @@
#define SRCDIR "."
#endif
-class tst_qdeclarativefontloader : public QObject
+class tst_qdeclarativefontloader : public QDeclarativeDataTest
{
Q_OBJECT
public:
tst_qdeclarativefontloader();
+ virtual void initTestCase();
private slots:
void init();
@@ -78,7 +81,12 @@ private:
tst_qdeclarativefontloader::tst_qdeclarativefontloader() :
server(SERVER_PORT)
{
- server.serveDirectory(SRCDIR "/data");
+}
+
+void tst_qdeclarativefontloader::initTestCase()
+{
+ QDeclarativeDataTest::initTestCase();
+ QVERIFY(server.serveDirectory(dataDirectory()));
}
void tst_qdeclarativefontloader::init()
@@ -116,7 +124,11 @@ void tst_qdeclarativefontloader::namedFont()
void tst_qdeclarativefontloader::localFont()
{
- QString componentStr = "import QtQuick 1.0\nFontLoader { source: \"" SRCDIR "/data/tarzeau_ocr_a.ttf\" }";
+ // Format a local file URL, else "C:\foo" is interpreted as an
+ // URL with protocol 'C' on Windows.
+ const QString localFileUrl = QUrl::fromLocalFile(directory() + QStringLiteral("/data/tarzeau_ocr_a.ttf")).toString();
+ const QString componentStr = QStringLiteral("import QtQuick 1.0\nFontLoader { source: \"")
+ + localFileUrl + QStringLiteral("\" }");
QDeclarativeComponent component(&engine);
component.setData(componentStr.toLatin1(), QUrl::fromLocalFile(""));
QDeclarativeFontLoader *fontObject = qobject_cast<QDeclarativeFontLoader*>(component.create());
@@ -129,8 +141,13 @@ void tst_qdeclarativefontloader::localFont()
void tst_qdeclarativefontloader::failLocalFont()
{
- QString componentStr = "import QtQuick 1.0\nFontLoader { source: \"" + QUrl::fromLocalFile(SRCDIR "/data/dummy.ttf").toString() + "\" }";
- QTest::ignoreMessage(QtWarningMsg, QString("file::2:1: QML FontLoader: Cannot load font: \"" + QUrl::fromLocalFile(SRCDIR "/data/dummy.ttf").toString() + "\"").toUtf8().constData());
+ const QString urlString = testFileUrl("dummy.ttf").toString();
+ const QString componentStr =
+ QStringLiteral("import QtQuick 1.0\nFontLoader { source: \"")
+ + urlString + QStringLiteral("\" }");
+ const QByteArray message = QByteArrayLiteral("file::2:1: QML FontLoader: Cannot load font: \"")
+ + urlString.toUtf8() + '"';
+ QTest::ignoreMessage(QtWarningMsg, message.constData());
QDeclarativeComponent component(&engine);
component.setData(componentStr.toLatin1(), QUrl::fromLocalFile(""));
QDeclarativeFontLoader *fontObject = qobject_cast<QDeclarativeFontLoader*>(component.create());
@@ -189,7 +206,8 @@ void tst_qdeclarativefontloader::changeFont()
{
QString componentStr = "import QtQuick 1.0\nFontLoader { source: font }";
QDeclarativeContext *ctxt = engine.rootContext();
- ctxt->setContextProperty("font", QUrl::fromLocalFile(SRCDIR "/data/tarzeau_ocr_a.ttf"));
+ const QUrl fontUrl = testFileUrl("tarzeau_ocr_a.ttf");
+ ctxt->setContextProperty("font", fontUrl);
QDeclarativeComponent component(&engine);
component.setData(componentStr.toLatin1(), QUrl::fromLocalFile(""));
QDeclarativeFontLoader *fontObject = qobject_cast<QDeclarativeFontLoader*>(component.create());
@@ -211,7 +229,7 @@ void tst_qdeclarativefontloader::changeFont()
QCOMPARE(statusSpy.count(), 2);
QTRY_COMPARE(fontObject->name(), QString("Daniel"));
- ctxt->setContextProperty("font", QUrl::fromLocalFile(SRCDIR "/data/tarzeau_ocr_a.ttf"));
+ ctxt->setContextProperty("font", fontUrl);
QTRY_VERIFY(fontObject->status() == QDeclarativeFontLoader::Ready);
QCOMPARE(nameSpy.count(), 2);
QCOMPARE(statusSpy.count(), 2);