aboutsummaryrefslogtreecommitdiffstats
path: root/src/imports/testlib/SignalSpy.qml
diff options
context:
space:
mode:
authorCharles Yin <charles.yin@nokia.com>2012-03-22 12:27:30 +1000
committerQt by Nokia <qt-info@nokia.com>2012-05-01 06:06:55 +0200
commit7cecad76b6a8beb31c74111b986be0e67bb2e15c (patch)
tree3db17684e3b0b29a11e75c206878a6b1fef708a1 /src/imports/testlib/SignalSpy.qml
parent0949071f13e7bcbc16a0f07f496e0b6a23b04edd (diff)
Consolidate SignalSpy item
1. Add signalArguments to track emitted signal parameters 2. Add valid property to track signal connection status 3. Make count, valid, signalArguments read only properties Task-number: QTBUG-18531 Change-Id: I08e99c1086786a0e5095bf0d04750dec33153fde Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Diffstat (limited to 'src/imports/testlib/SignalSpy.qml')
-rw-r--r--src/imports/testlib/SignalSpy.qml24
1 files changed, 17 insertions, 7 deletions
diff --git a/src/imports/testlib/SignalSpy.qml b/src/imports/testlib/SignalSpy.qml
index 539cb178f5..a3c5111c53 100644
--- a/src/imports/testlib/SignalSpy.qml
+++ b/src/imports/testlib/SignalSpy.qml
@@ -49,16 +49,17 @@ Item {
TestUtil {
id: util
}
-
// Public API.
-
property var target: null
property string signalName: ""
- property int count: 0
+ readonly property alias count: spy.qtest_count
+ readonly property alias valid:spy.qtest_valid
+ readonly property alias signalArguments:spy.qtest_signalArguments
function clear() {
- count = 0
+ qtest_count = 0
qtest_expectedCount = 0
+ qtest_signalArguments = []
}
function wait(timeout) {
@@ -66,11 +67,11 @@ Item {
timeout = 5000
var expected = ++qtest_expectedCount
var i = 0
- while (i < timeout && count < expected) {
+ while (i < timeout && qtest_count < expected) {
qtest_results.wait(50)
i += 50
}
- var success = (count >= expected)
+ var success = (qtest_count >= expected)
if (!qtest_results.verify(success, "wait for signal " + signalName, util.callerFile(), util.callerLine()))
throw new Error("QtQuickTest::fail")
}
@@ -89,6 +90,9 @@ Item {
property var qtest_prevTarget: null
property string qtest_prevSignalName: ""
property int qtest_expectedCount: 0
+ property var qtest_signalArguments:[]
+ property int qtest_count: 0
+ property bool qtest_valid:false
function qtest_update() {
if (qtest_prevTarget != null) {
@@ -101,16 +105,22 @@ Item {
if (target != null && signalName != "") {
var func = target[signalName]
if (func === undefined) {
+ spy.qtest_valid = false
console.log("Signal '" + signalName + "' not found")
} else {
qtest_prevTarget = target
qtest_prevSignalName = signalName
func.connect(spy.qtest_activated)
+ spy.qtest_valid = true
+ spy.qtest_signalArguments = []
}
+ } else {
+ spy.qtest_valid = false
}
}
function qtest_activated() {
- ++count
+ ++qtest_count
+ spy.qtest_signalArguments[spy.qtest_signalArguments.length] = arguments
}
}