diff options
author | Michael Brasser <michael.brasser@nokia.com> | 2011-10-25 09:49:22 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-10-26 07:30:56 +0200 |
commit | bd690fa7a62463280c98661e1aa54dd12c60b2d1 (patch) | |
tree | cb860fce55d591a375d33b6b1db3803287d2ef14 /tests/auto/declarative | |
parent | fa30c9ae2577cd99b3025012e5af63af21fcc58d (diff) |
Add test for bug with typeof in imported js files.
Task-number: QTBUG-21864
Change-Id: I0fc9dc02f7ec00a2f7234484f5afafbbfe7ffca0
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Diffstat (limited to 'tests/auto/declarative')
3 files changed, 71 insertions, 0 deletions
diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/typeOf.js b/tests/auto/declarative/qdeclarativeecmascript/data/typeOf.js new file mode 100644 index 0000000000..16a34234c0 --- /dev/null +++ b/tests/auto/declarative/qdeclarativeecmascript/data/typeOf.js @@ -0,0 +1,25 @@ +var test1 = typeof a + +var b = {} +var test2 = typeof b + +var c = 5 +var test3 = typeof c + +var d = "hello world" +var test4 = typeof d + +var e = function() {} +var test5 = typeof e + +var f = null +var test6 = typeof f + +var g = undefined +var test7 = typeof g + +var h = true +var test8 = typeof h + +var i = [] +var test9 = typeof i diff --git a/tests/auto/declarative/qdeclarativeecmascript/data/typeOf.qml b/tests/auto/declarative/qdeclarativeecmascript/data/typeOf.qml new file mode 100644 index 0000000000..28f7debed5 --- /dev/null +++ b/tests/auto/declarative/qdeclarativeecmascript/data/typeOf.qml @@ -0,0 +1,26 @@ +import QtQuick 2.0 +import "typeOf.js" as TypeOf + +QtObject { + property string test1 + property string test2 + property string test3 + property string test4 + property string test5 + property string test6 + property string test7 + property string test8 + property string test9 + + Component.onCompleted: { + test1 = TypeOf.test1 + test2 = TypeOf.test2 + test3 = TypeOf.test3 + test4 = TypeOf.test4 + test5 = TypeOf.test5 + test6 = TypeOf.test6 + test7 = TypeOf.test7 + test8 = TypeOf.test8 + test9 = TypeOf.test9 + } +} diff --git a/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp b/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp index 33604ddcbf..31aefd264e 100644 --- a/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp +++ b/tests/auto/declarative/qdeclarativeecmascript/tst_qdeclarativeecmascript.cpp @@ -195,6 +195,7 @@ private slots: void nonscriptable(); void deleteLater(); void in(); + void typeOf(); void sharedAttachedObject(); void objectName(); void writeRemovesBinding(); @@ -4512,6 +4513,25 @@ void tst_qdeclarativeecmascript::in() delete o; } +void tst_qdeclarativeecmascript::typeOf() +{ + QDeclarativeComponent component(&engine, TEST_FILE("typeOf.qml")); + QObject *o = component.create(); + QVERIFY(o != 0); + QCOMPARE(o->property("test1").toString(), QLatin1String("undefined")); + QEXPECT_FAIL("", "QTBUG-21864", Abort); + QCOMPARE(o->property("test2").toString(), QLatin1String("object")); + QCOMPARE(o->property("test3").toString(), QLatin1String("number")); + QCOMPARE(o->property("test4").toString(), QLatin1String("string")); + QCOMPARE(o->property("test5").toString(), QLatin1String("function")); + QCOMPARE(o->property("test6").toString(), QLatin1String("object")); + QCOMPARE(o->property("test7").toString(), QLatin1String("undefined")); + QCOMPARE(o->property("test8").toString(), QLatin1String("boolean")); + QCOMPARE(o->property("test9").toString(), QLatin1String("object")); + + delete o; +} + void tst_qdeclarativeecmascript::sharedAttachedObject() { QDeclarativeComponent component(&engine, TEST_FILE("sharedAttachedObject.qml")); |