From d65b660d5d7f30058efc74c7cab074641923038f Mon Sep 17 00:00:00 2001 From: Matthew Vogt Date: Thu, 5 Jul 2012 15:00:24 +1000 Subject: Expand test case for qrc:/ URLs Change-Id: Ibf8a04efbcb9d39938201f65c1fc0f236243a287 Reviewed-by: Martin Jones --- tests/auto/qml/qrcqml/data/SameDir.qml | 2 +- tests/auto/qml/qrcqml/data/SameDir2.qml | 5 +++++ tests/auto/qml/qrcqml/data/SameDir3.qml | 5 +++++ tests/auto/qml/qrcqml/data/main.qml | 4 ++-- tests/auto/qml/qrcqml/data/main2.qml | 6 ++++++ tests/auto/qml/qrcqml/data/main3.qml | 6 ++++++ tests/auto/qml/qrcqml/qrcqml.qrc | 16 ++++++++++++++-- tests/auto/qml/qrcqml/tst_qrcqml.cpp | 33 +++++++++++++++++++++++++++++++-- 8 files changed, 70 insertions(+), 7 deletions(-) create mode 100644 tests/auto/qml/qrcqml/data/SameDir2.qml create mode 100644 tests/auto/qml/qrcqml/data/SameDir3.qml create mode 100644 tests/auto/qml/qrcqml/data/main2.qml create mode 100644 tests/auto/qml/qrcqml/data/main3.qml (limited to 'tests') diff --git a/tests/auto/qml/qrcqml/data/SameDir.qml b/tests/auto/qml/qrcqml/data/SameDir.qml index b4950b901e..1ee9b7630f 100644 --- a/tests/auto/qml/qrcqml/data/SameDir.qml +++ b/tests/auto/qml/qrcqml/data/SameDir.qml @@ -1,5 +1,5 @@ import QtQuick 2.0 QtObject { - property string tokenProperty: "hello" + property string tokenProperty: "foo" } diff --git a/tests/auto/qml/qrcqml/data/SameDir2.qml b/tests/auto/qml/qrcqml/data/SameDir2.qml new file mode 100644 index 0000000000..83d0673d64 --- /dev/null +++ b/tests/auto/qml/qrcqml/data/SameDir2.qml @@ -0,0 +1,5 @@ +import QtQuick 2.0 + +QtObject { + property string tokenProperty: "bar" +} diff --git a/tests/auto/qml/qrcqml/data/SameDir3.qml b/tests/auto/qml/qrcqml/data/SameDir3.qml new file mode 100644 index 0000000000..b1d08f4225 --- /dev/null +++ b/tests/auto/qml/qrcqml/data/SameDir3.qml @@ -0,0 +1,5 @@ +import QtQuick 2.0 + +QtObject { + property string tokenProperty: "baz" +} diff --git a/tests/auto/qml/qrcqml/data/main.qml b/tests/auto/qml/qrcqml/data/main.qml index e9069b5bd2..339c6dedf7 100644 --- a/tests/auto/qml/qrcqml/data/main.qml +++ b/tests/auto/qml/qrcqml/data/main.qml @@ -1,6 +1,6 @@ import QtQuick 2.0 -import "data" as Subdirectory +import "../data" as Subdirectory SameDir { - property QtObject other: Subdirectory.SubDir{} + property QtObject other: Subdirectory.SubDir {} } diff --git a/tests/auto/qml/qrcqml/data/main2.qml b/tests/auto/qml/qrcqml/data/main2.qml new file mode 100644 index 0000000000..b1eb73c31f --- /dev/null +++ b/tests/auto/qml/qrcqml/data/main2.qml @@ -0,0 +1,6 @@ +import QtQuick 2.0 +import "data" as Subdirectory + +SameDir { + property QtObject other: Subdirectory.SubDir {} +} diff --git a/tests/auto/qml/qrcqml/data/main3.qml b/tests/auto/qml/qrcqml/data/main3.qml new file mode 100644 index 0000000000..b1eb73c31f --- /dev/null +++ b/tests/auto/qml/qrcqml/data/main3.qml @@ -0,0 +1,6 @@ +import QtQuick 2.0 +import "data" as Subdirectory + +SameDir { + property QtObject other: Subdirectory.SubDir {} +} diff --git a/tests/auto/qml/qrcqml/qrcqml.qrc b/tests/auto/qml/qrcqml/qrcqml.qrc index 47b88ab78f..4ee303a1ee 100644 --- a/tests/auto/qml/qrcqml/qrcqml.qrc +++ b/tests/auto/qml/qrcqml/qrcqml.qrc @@ -1,7 +1,19 @@ + data/main.qml + data/SameDir.qml data/SubDir.qml - data/main.qml - data/SameDir.qml + + + + data/main2.qml + data/SameDir2.qml + + + data/main3.qml + data/SameDir3.qml + + + data/SubDir.qml diff --git a/tests/auto/qml/qrcqml/tst_qrcqml.cpp b/tests/auto/qml/qrcqml/tst_qrcqml.cpp index b81fff0f08..a09c908069 100644 --- a/tests/auto/qml/qrcqml/tst_qrcqml.cpp +++ b/tests/auto/qml/qrcqml/tst_qrcqml.cpp @@ -55,6 +55,7 @@ public: tst_qrcqml(); private slots: + void basicLoad_data(); void basicLoad(); }; @@ -62,16 +63,44 @@ tst_qrcqml::tst_qrcqml() { } +void tst_qrcqml::basicLoad_data() +{ + QTest::addColumn("url"); + QTest::addColumn("token"); + + QTest::newRow("simple") + << "qrc:/data/main.qml" + << "foo"; + + QTest::newRow("aliased") + << "qrc:/main.qml" + << "bar"; + + QTest::newRow("prefixed") + << "qrc:/search/main.qml" + << "baz"; + + /* This is not supported: + QTest::newRow("without qrc scheme") + << ":/data/main.qml" + << "hello"; + */ +} + void tst_qrcqml::basicLoad() { + QFETCH(QString, url); + QFETCH(QString, token); + QQmlEngine e; - QQmlComponent c(&e, QUrl("qrc:/main.qml")); + QQmlComponent c(&e, QUrl(url)); QVERIFY(c.isReady()); QObject* o = c.create(); QVERIFY(o); - QCOMPARE(o->property("tokenProperty").toString(), QLatin1String("hello")); + QCOMPARE(o->property("tokenProperty").toString(), token); delete o; } + QTEST_MAIN(tst_qrcqml) #include "tst_qrcqml.moc" -- cgit v1.2.3