diff options
author | Chris Adams <christopher.adams@nokia.com> | 2012-07-05 11:53:18 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-07-11 02:59:49 +0200 |
commit | 03192f749c14ffdde24d3e1585fadf98f9750938 (patch) | |
tree | db285bd45521e1e0799d9c3a4536ea0bdf2e8f31 /tests/auto | |
parent | 7ee8156116581e08466ebc23b31e2b76c127e742 (diff) |
Don't provide typehint in QQmlExpression::evaluate()
Previously, the result returned by QQmlExpression::evaluate() was
converted from the actual JavaScript result with a default typehint
of QList<QObject*>. This commit removes that typehint so that the
engine's conversion code will choose the most appropriate return type
for the result JavaScript value, instead.
Task-number: QTBUG-17082
Change-Id: I368a018b235e9e001b1b92db3699de377748b74f
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Diffstat (limited to 'tests/auto')
-rw-r--r-- | tests/auto/qml/debugger/qqmlenginedebugservice/tst_qqmlenginedebugservice.cpp | 4 | ||||
-rw-r--r-- | tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp | 12 |
2 files changed, 8 insertions, 8 deletions
diff --git a/tests/auto/qml/debugger/qqmlenginedebugservice/tst_qqmlenginedebugservice.cpp b/tests/auto/qml/debugger/qqmlenginedebugservice/tst_qqmlenginedebugservice.cpp index f0e3d956ab..3ecc0d6e95 100644 --- a/tests/auto/qml/debugger/qqmlenginedebugservice/tst_qqmlenginedebugservice.cpp +++ b/tests/auto/qml/debugger/qqmlenginedebugservice/tst_qqmlenginedebugservice.cpp @@ -858,7 +858,7 @@ void tst_QQmlEngineDebugService::queryExpressionResult_data() QTest::newRow("blueRect.width") << "blueRect.width" << qVariantFromValue(500); QTest::newRow("bad expr") << "aeaef" << qVariantFromValue(QString("<undefined>")); QTest::newRow("QObject*") << "varObj" << qVariantFromValue(QString("<unnamed object>")); - QTest::newRow("list of QObject*") << "varObjList" << qVariantFromValue(QString("<unknown value>")); + QTest::newRow("list of QObject*") << "varObjList" << qVariantFromValue(QVariantList() << QVariant(QString("<unnamed object>"))); QVariantMap map; map.insert(QLatin1String("rect"), QVariant(QLatin1String("<unnamed object>"))); QTest::newRow("varObjMap") << "varObjMap" << qVariantFromValue(map); @@ -906,7 +906,7 @@ void tst_QQmlEngineDebugService::queryExpressionResultBC_data() QTest::newRow("blueRect.width") << "blueRect.width" << qVariantFromValue(500); QTest::newRow("bad expr") << "aeaef" << qVariantFromValue(QString("<undefined>")); QTest::newRow("QObject*") << "varObj" << qVariantFromValue(QString("<unnamed object>")); - QTest::newRow("list of QObject*") << "varObjList" << qVariantFromValue(QString("<unknown value>")); + QTest::newRow("list of QObject*") << "varObjList" << qVariantFromValue(QVariantList() << QVariant(QString("<unnamed object>"))); QVariantMap map; map.insert(QLatin1String("rect"), QVariant(QLatin1String("<unnamed object>"))); QTest::newRow("varObjMap") << "varObjMap" << qVariantFromValue(map); diff --git a/tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp b/tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp index 66ae27e9ec..aaa6d365bd 100644 --- a/tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp +++ b/tests/auto/qml/qqmlecmascript/tst_qqmlecmascript.cpp @@ -660,13 +660,13 @@ void tst_qqmlecmascript::arrayExpressions() MyExpression expr(&context, "[a, b, c, 10]"); QVariant result = expr.evaluate(); - QCOMPARE(result.userType(), qMetaTypeId<QList<QObject *> >()); - QList<QObject *> list = qvariant_cast<QList<QObject *> >(result); + QCOMPARE(result.userType(), qMetaTypeId<QVariantList>()); + QVariantList list = qvariant_cast<QVariantList>(result); QCOMPARE(list.count(), 4); - QCOMPARE(list.at(0), &obj1); - QCOMPARE(list.at(1), &obj2); - QCOMPARE(list.at(2), &obj3); - QCOMPARE(list.at(3), (QObject *)0); + QCOMPARE(list.at(0).value<QObject*>(), &obj1); + QCOMPARE(list.at(1).value<QObject*>(), &obj2); + QCOMPARE(list.at(2).value<QObject*>(), &obj3); + QCOMPARE(list.at(3).value<int>(), 10); } // Tests that modifying a context property will reevaluate expressions |