summaryrefslogtreecommitdiff
path: root/tests/auto/qml
diff options
context:
space:
mode:
authorMilian Wolff <milian.wolff@kdab.com>2014-08-11 13:43:38 +0200
committerIsmo Haataja <ismo.haataja@digia.com>2014-08-26 08:12:44 +0200
commit5d204b2879c8eb1cd98e7713db8a26905fbc6cfd (patch)
tree5e153384c9298d4b1d44fceccd623cf422895003 /tests/auto/qml
parentdac411122a9275eac6b94c1cd3ca0c300937cf83 (diff)
downloadqtwebchannel-5d204b2879c8eb1cd98e7713db8a26905fbc6cfd.tar.gz
Get rid of setTimeout calls in qwebchannel.js client code.
This was a historic artefact which should not be required anymore. Back then it was added when trying to improve the perceived performance of the webchannel on an embedded device. Nowadays, using the built-in WebKit IPC mechanism instead of WebSockets, paired with the rest of the code cleanup and other changes, it should not be required anymore. Change-Id: I4b2d76d84aaf92e12592a0b2bcf94710b697846e Reviewed-by: Lutz Schönemann <lutz.schoenemann@basyskom.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'tests/auto/qml')
-rw-r--r--tests/auto/qml/Client.qml25
-rw-r--r--tests/auto/qml/tst_webchannel.qml6
2 files changed, 6 insertions, 25 deletions
diff --git a/tests/auto/qml/Client.qml b/tests/auto/qml/Client.qml
index 0b623a0..161a85e 100644
--- a/tests/auto/qml/Client.qml
+++ b/tests/auto/qml/Client.qml
@@ -86,30 +86,6 @@ Item {
}
readonly property var clientTransport: clientTransport
- Timer {
- id: timer
- running: false
- repeat: false
-
- property var callback
-
- onTriggered: {
- callback();
- }
- }
-
- function setTimeout(callback, delay)
- {
- if (timer.running) {
- console.error("nested calls to setTimeout are not supported!", JSON.stringify(callback), JSON.stringify(timer.callback));
- return;
- }
- timer.callback = callback;
- // note: an interval of 0 is directly triggered, so add a little padding
- timer.interval = delay + 1;
- timer.running = true;
- }
-
function createChannel(callback, raw)
{
return new JSClient.QWebChannel(clientTransport, callback, raw);
@@ -118,7 +94,6 @@ Item {
function cleanup()
{
clientMessages = [];
- timer.running = false;
}
function awaitRawMessage()
diff --git a/tests/auto/qml/tst_webchannel.qml b/tests/auto/qml/tst_webchannel.qml
index 46ac209..899db69 100644
--- a/tests/auto/qml/tst_webchannel.qml
+++ b/tests/auto/qml/tst_webchannel.qml
@@ -256,6 +256,8 @@ TestCase {
compare(msg.args, ["foobar"]);
compare(lastMethodArg, "foobar");
+ client.awaitIdle();
+
myFactory.lastObj.mySignal("foobar", 42);
// deleteLater call
@@ -292,8 +294,12 @@ TestCase {
compare(msg.type, JSClient.QWebChannelMessageTypes.connectToSignal);
compare(typeof channel.objects[testObjId], "object");
+ client.awaitIdle();
+
channel.objects[testObjId].deleteLater();
msg = client.awaitMessage();
+ compare(msg.type, JSClient.QWebChannelMessageTypes.invokeMethod);
+ compare(msg.object, testObjId);
// after receiving the destroyed signal the client deletes
// local objects and sends back a idle message