Ensure importing module API in js import works
authorChris Adams <christopher.adams@nokia.com>
Fri, 24 Feb 2012 06:14:12 +0000 (16:14 +1000)
committerQt by Nokia <qt-info@nokia.com>
Mon, 27 Feb 2012 01:39:41 +0000 (02:39 +0100)
This commit adds a unit test to ensure that a property of a module
api can be accessed in a JavaScript import.

Change-Id: Iecba76a9db0400ece1777256f19803d4bad53438
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>

tests/auto/declarative/qdeclarativeecmascript/data/jsimport/importModuleApi.js [new file with mode: 0644]
tests/auto/declarative/qdeclarativeecmascript/data/jsimport/testImportModuleApi.qml [new file with mode: 0644]
tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp

diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/jsimport/importModuleApi.js b/tests/auto/declarative/qdeclarativeecmascript/data/jsimport/importModuleApi.js
new file mode 100644 (file)
index 0000000..7a4f434
--- /dev/null
@@ -0,0 +1,5 @@
+.import Qt.test 1.0 as QObjectModuleApi
+
+function testFunc() {
+    return QObjectModuleApi.qobjectTestProperty
+}
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/jsimport/testImportModuleApi.qml b/tests/auto/declarative/qdeclarativeecmascript/data/jsimport/testImportModuleApi.qml
new file mode 100644 (file)
index 0000000..b3e545d
--- /dev/null
@@ -0,0 +1,10 @@
+import QtQuick 2.0
+import "importModuleApi.js" as Script
+
+Item {
+    property variant testValue: 5
+
+    Component.onCompleted: {
+        testValue = Script.testFunc();
+    }
+}
index 7fc137e..6905252 100644 (file)
@@ -3267,6 +3267,13 @@ void tst_qdeclarativeecmascript::importScripts_data()
             << QStringList()
             << (QStringList() << QLatin1String("testValue"))
             << (QVariantList() << QVariant(18));
+
+    QTest::newRow("import module api into js import")
+            << testFileUrl("jsimport/testImportModuleApi.qml")
+            << QString()
+            << QStringList()
+            << (QStringList() << QLatin1String("testValue"))
+            << (QVariantList() << QVariant(20));
 }
 
 void tst_qdeclarativeecmascript::importScripts()