aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/controls/data
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/controls/data')
-rw-r--r--tests/auto/controls/data/tst_button.qml166
-rw-r--r--tests/auto/controls/data/tst_buttongroup.qml33
-rw-r--r--tests/auto/controls/data/tst_checkbox.qml126
-rw-r--r--tests/auto/controls/data/tst_combobox.qml195
-rw-r--r--tests/auto/controls/data/tst_control.qml44
-rw-r--r--tests/auto/controls/data/tst_popup.qml104
-rw-r--r--tests/auto/controls/data/tst_radiobutton.qml80
-rw-r--r--tests/auto/controls/data/tst_rangeslider.qml36
-rw-r--r--tests/auto/controls/data/tst_scrollbar.qml59
-rw-r--r--tests/auto/controls/data/tst_scrollindicator.qml16
-rw-r--r--tests/auto/controls/data/tst_slider.qml22
-rw-r--r--tests/auto/controls/data/tst_spinbox.qml99
-rw-r--r--tests/auto/controls/data/tst_stackview.qml12
-rw-r--r--tests/auto/controls/data/tst_swipedelegate.qml54
-rw-r--r--tests/auto/controls/data/tst_swipeview.qml17
-rw-r--r--tests/auto/controls/data/tst_tabbar.qml20
-rw-r--r--tests/auto/controls/data/tst_toolbutton.qml40
17 files changed, 672 insertions, 451 deletions
diff --git a/tests/auto/controls/data/tst_button.qml b/tests/auto/controls/data/tst_button.qml
index f8717a88..9038f1d6 100644
--- a/tests/auto/controls/data/tst_button.qml
+++ b/tests/auto/controls/data/tst_button.qml
@@ -52,16 +52,21 @@ TestCase {
Component {
id: button
- Button {
- id: control
+ Button { }
+ }
- property SignalSequenceSpy spy: SignalSequenceSpy {
- target: control
- signals: ["pressed", "released", "canceled", "clicked", "doubleClicked", "pressedChanged", "downChanged", "checkedChanged"]
- }
+ Component {
+ id: signalSequenceSpy
+ SignalSequenceSpy {
+ signals: ["pressed", "released", "canceled", "clicked", "doubleClicked", "pressedChanged", "downChanged", "checkedChanged"]
}
}
+ Component {
+ id: signalSpy
+ SignalSpy { }
+ }
+
function test_text() {
var control = button.createObject(testCase)
verify(control)
@@ -79,52 +84,54 @@ TestCase {
var control = button.createObject(testCase)
verify(control)
+ var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
+
// click
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true }],
["downChanged", { "down": true }],
"pressed"]
mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton)
compare(control.pressed, true)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.expectedSequence = [["pressedChanged", { "pressed": false }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false }],
["downChanged", { "down": false }],
"released",
"clicked"]
mouseRelease(control, control.width / 2, control.height / 2, Qt.LeftButton)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// release outside
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true }],
["downChanged", { "down": true }],
"pressed"]
mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton)
compare(control.pressed, true)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.expectedSequence = [["pressedChanged", { "pressed": false }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false }],
["downChanged", { "down": false }]]
mouseMove(control, control.width * 2, control.height * 2, 0, Qt.LeftButton)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.expectedSequence = [["canceled", { "pressed": false }]]
+ sequenceSpy.expectedSequence = [["canceled", { "pressed": false }]]
mouseRelease(control, control.width * 2, control.height * 2, Qt.LeftButton)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// right button
- control.spy.expectedSequence = []
+ sequenceSpy.expectedSequence = []
mousePress(control, control.width / 2, control.height / 2, Qt.RightButton)
compare(control.pressed, false)
mouseRelease(control, control.width / 2, control.height / 2, Qt.RightButton)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// double click
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true }],
["downChanged", { "down": true }],
"pressed",
["pressedChanged", { "pressed": false }],
@@ -140,7 +147,7 @@ TestCase {
"released",
"clicked"]
mouseDoubleClickSequence(control, control.width / 2, control.height / 2, Qt.LeftButton)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
control.destroy()
}
@@ -152,8 +159,10 @@ TestCase {
control.forceActiveFocus()
verify(control.activeFocus)
+ var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
+
// click
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true }],
["downChanged", { "down": true }],
"pressed",
["pressedChanged", { "pressed": false }],
@@ -161,15 +170,15 @@ TestCase {
"released",
"clicked"]
keyClick(Qt.Key_Space)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// no change
- control.spy.expectedSequence = []
+ sequenceSpy.expectedSequence = []
var keys = [Qt.Key_Enter, Qt.Key_Return, Qt.Key_Escape, Qt.Key_Tab]
for (var i = 0; i < keys.length; ++i) {
- control.spy.reset()
+ sequenceSpy.reset()
keyClick(keys[i])
- verify(control.spy.success)
+ verify(sequenceSpy.success)
}
control.destroy()
@@ -179,8 +188,6 @@ TestCase {
return "actual event:" + JSON.stringify(actual) + ", expected event:" + JSON.stringify(expected)
}
- SignalSpy { id: clickSpy; signalName: "clicked" }
-
function test_autoRepeat() {
var control = button.createObject(testCase)
verify(control)
@@ -192,50 +199,77 @@ TestCase {
control.forceActiveFocus()
verify(control.activeFocus)
- clickSpy.target = control
+ var clickSpy = signalSpy.createObject(control, {target: control, signalName: "clicked"})
verify(clickSpy.valid)
+ var pressSpy = signalSpy.createObject(control, {target: control, signalName: "pressed"})
+ verify(pressSpy.valid)
+ var releaseSpy = signalSpy.createObject(control, {target: control, signalName: "released"})
+ verify(releaseSpy.valid)
- var repeatCount = 2
- var repeatSequence = [["pressedChanged", { "pressed": true }],
- ["downChanged", { "down": true }],
- "pressed",
- "released",
- "clicked",
- "pressed",
- "released",
- "clicked",
- "pressed"]
-
- // auto-repeat a couple of mouse clicks
- control.spy.expectedSequence = repeatSequence
+ // auto-repeat mouse click
mousePress(control)
compare(control.pressed, true)
- tryCompare(clickSpy, "count", repeatCount)
- verify(control.spy.success)
-
- control.spy.expectedSequence = [["pressedChanged", { "pressed": false }],
- ["downChanged", { "down": false }],
- "released",
- "clicked"]
+ clickSpy.wait()
+ clickSpy.wait()
+ compare(pressSpy.count, clickSpy.count + 1)
+ compare(releaseSpy.count, clickSpy.count)
mouseRelease(control)
compare(control.pressed, false)
- verify(control.spy.success)
+ compare(clickSpy.count, pressSpy.count)
+ compare(releaseSpy.count, pressSpy.count)
- // auto-repeat a couple of key clicks
clickSpy.clear()
- control.spy.expectedSequence = repeatSequence
+ pressSpy.clear()
+ releaseSpy.clear()
+
+ // auto-repeat key click
keyPress(Qt.Key_Space)
compare(control.pressed, true)
- tryCompare(clickSpy, "count", repeatCount)
- verify(control.spy.success)
-
- control.spy.expectedSequence = [["pressedChanged", { "pressed": false }],
- ["downChanged", { "down": false }],
- "released",
- "clicked"]
+ clickSpy.wait()
+ clickSpy.wait()
+ compare(pressSpy.count, clickSpy.count + 1)
+ compare(releaseSpy.count, clickSpy.count)
keyRelease(Qt.Key_Space)
compare(control.pressed, false)
- verify(control.spy.success)
+ compare(clickSpy.count, pressSpy.count)
+ compare(releaseSpy.count, pressSpy.count)
+
+ clickSpy.clear()
+ pressSpy.clear()
+ releaseSpy.clear()
+
+ mousePress(control)
+ compare(control.pressed, true)
+ clickSpy.wait()
+ compare(pressSpy.count, clickSpy.count + 1)
+ compare(releaseSpy.count, clickSpy.count)
+
+ // move inside during repeat -> continue repeat
+ mouseMove(control, control.width / 4, control.height / 4)
+ clickSpy.wait()
+ compare(pressSpy.count, clickSpy.count + 1)
+ compare(releaseSpy.count, clickSpy.count)
+
+ clickSpy.clear()
+ pressSpy.clear()
+ releaseSpy.clear()
+
+ // move outside during repeat -> stop repeat
+ mouseMove(control, -1, -1)
+ // NOTE: The following wait() is NOT a reliable way to test that the
+ // auto-repeat timer is not running, but there's no way dig into the
+ // private APIs from QML. If this test ever fails in the future, it
+ // indicates that the auto-repeat timer logic is broken.
+ wait(125)
+ compare(clickSpy.count, 0)
+ compare(pressSpy.count, 0)
+ compare(releaseSpy.count, 0)
+
+ mouseRelease(control, -1, -1)
+ compare(control.pressed, false)
+ compare(clickSpy.count, 0)
+ compare(pressSpy.count, 0)
+ compare(releaseSpy.count, 0)
control.destroy()
}
@@ -253,7 +287,9 @@ TestCase {
verify(control.hasOwnProperty("checkable"))
verify(!control.checkable)
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true }],
+ var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
+
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true }],
["downChanged", { "down": true }],
"pressed",
["pressedChanged", { "pressed": false }],
@@ -262,9 +298,9 @@ TestCase {
"clicked"]
mouseClick(control)
verify(!control.checked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true }],
["downChanged", { "down": true }],
"pressed",
["pressedChanged", { "pressed": false }],
@@ -275,9 +311,9 @@ TestCase {
control.checkable = true
mouseClick(control)
verify(control.checked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true }],
["downChanged", { "down": true }],
"pressed",
["pressedChanged", { "pressed": false }],
@@ -287,7 +323,7 @@ TestCase {
"clicked"]
mouseClick(control)
verify(!control.checked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
control.destroy()
}
diff --git a/tests/auto/controls/data/tst_buttongroup.qml b/tests/auto/controls/data/tst_buttongroup.qml
index bb0ffe00..754e4f0b 100644
--- a/tests/auto/controls/data/tst_buttongroup.qml
+++ b/tests/auto/controls/data/tst_buttongroup.qml
@@ -55,30 +55,9 @@ TestCase {
ButtonGroup { }
}
- SignalSpy {
- id: checkedButtonSpy
- signalName: "checkedButtonChanged"
- }
-
- SignalSpy {
- id: buttonsSpy
- signalName: "buttonsChanged"
- }
-
- function init() {
- verify(!checkedButtonSpy.target)
- compare(checkedButtonSpy.count, 0)
-
- verify(!buttonsSpy.target)
- compare(buttonsSpy.count, 0)
- }
-
- function cleanup() {
- checkedButtonSpy.target = null
- checkedButtonSpy.clear()
-
- buttonsSpy.target = null
- buttonsSpy.clear()
+ Component {
+ id: signalSpy
+ SignalSpy { }
}
function test_null() {
@@ -105,7 +84,7 @@ TestCase {
var group = buttonGroup.createObject(testCase)
verify(group)
- checkedButtonSpy.target = group
+ var checkedButtonSpy = signalSpy.createObject(testCase, {target: group, signalName: "checkedButtonChanged"})
verify(checkedButtonSpy.valid)
verify(!group.checkedButton)
@@ -176,7 +155,7 @@ TestCase {
var group = buttonGroup.createObject(testCase)
verify(group)
- buttonsSpy.target = group
+ var buttonsSpy = signalSpy.createObject(testCase, {target: group, signalName: "buttonsChanged"})
verify(buttonsSpy.valid)
compare(group.buttons.length, 0)
@@ -301,7 +280,7 @@ TestCase {
var group = buttonGroup.createObject(testCase)
verify(group)
- buttonsSpy.target = group
+ var buttonsSpy = signalSpy.createObject(testCase, {target: group, signalName: "buttonsChanged"})
verify(buttonsSpy.valid)
var button1 = button.createObject(testCase, {objectName: "button1", checked: true})
diff --git a/tests/auto/controls/data/tst_checkbox.qml b/tests/auto/controls/data/tst_checkbox.qml
index 7969b589..044b0006 100644
--- a/tests/auto/controls/data/tst_checkbox.qml
+++ b/tests/auto/controls/data/tst_checkbox.qml
@@ -52,13 +52,13 @@ TestCase {
Component {
id: checkBox
- CheckBox {
- id: control
+ CheckBox { }
+ }
- property SignalSequenceSpy spy: SignalSequenceSpy {
- target: control
- signals: ["pressed", "released", "canceled", "clicked", "pressedChanged", "checkedChanged", "checkStateChanged"]
- }
+ Component {
+ id: signalSequenceSpy
+ SignalSequenceSpy {
+ signals: ["pressed", "released", "canceled", "clicked", "pressedChanged", "checkedChanged", "checkStateChanged"]
}
}
@@ -79,24 +79,26 @@ TestCase {
var control = checkBox.createObject(testCase)
verify(control)
- control.spy.expectedSequence = []
+ var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
+
+ sequenceSpy.expectedSequence = []
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.expectedSequence = [["checkStateChanged", { "checked": true, "checkState": Qt.Checked }],
+ sequenceSpy.expectedSequence = [["checkStateChanged", { "checked": true, "checkState": Qt.Checked }],
["checkedChanged", { "checked": true, "checkState": Qt.Checked }]]
control.checked = true
compare(control.checked, true)
compare(control.checkState, Qt.Checked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.expectedSequence = [["checkStateChanged", { "checked": false, "checkState": Qt.Unchecked }],
+ sequenceSpy.expectedSequence = [["checkStateChanged", { "checked": false, "checkState": Qt.Unchecked }],
["checkedChanged", { "checked": false, "checkState": Qt.Unchecked }]]
control.checked = false
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
control.destroy()
}
@@ -105,24 +107,26 @@ TestCase {
var control = checkBox.createObject(testCase)
verify(control)
- control.spy.expectedSequence = []
+ var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
+
+ sequenceSpy.expectedSequence = []
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.expectedSequence = [["checkStateChanged", { "checked": true, "checkState": Qt.Checked }],
+ sequenceSpy.expectedSequence = [["checkStateChanged", { "checked": true, "checkState": Qt.Checked }],
["checkedChanged", { "checked": true, "checkState": Qt.Checked }]]
control.checkState = Qt.Checked
compare(control.checked, true)
compare(control.checkState, Qt.Checked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.expectedSequence = [["checkStateChanged", { "checked": false, "checkState": Qt.Unchecked }],
+ sequenceSpy.expectedSequence = [["checkStateChanged", { "checked": false, "checkState": Qt.Unchecked }],
["checkedChanged", { "checked": false, "checkState": Qt.Unchecked }]]
control.checkState = Qt.Unchecked
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
control.destroy()
}
@@ -131,14 +135,16 @@ TestCase {
var control = checkBox.createObject(testCase)
verify(control)
+ var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
+
// check
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
"pressed"]
mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton)
compare(control.pressed, true)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
["checkedChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
"released",
@@ -147,15 +153,15 @@ TestCase {
compare(control.checked, true)
compare(control.checkState, Qt.Checked)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// uncheck
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.Checked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.Checked }],
"pressed"]
mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton)
compare(control.pressed, true)
- verify(control.spy.success)
- control.spy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
+ verify(sequenceSpy.success)
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
["checkStateChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
["checkedChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
"released",
@@ -164,34 +170,34 @@ TestCase {
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// release outside
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
"pressed"]
mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton)
compare(control.pressed, true)
- verify(control.spy.success)
- control.spy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }]]
+ verify(sequenceSpy.success)
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }]]
mouseMove(control, control.width * 2, control.height * 2, 0, Qt.LeftButton)
compare(control.pressed, false)
- verify(control.spy.success)
- control.spy.expectedSequence = [["canceled", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }]]
+ verify(sequenceSpy.success)
+ sequenceSpy.expectedSequence = [["canceled", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }]]
mouseRelease(control, control.width * 2, control.height * 2, Qt.LeftButton)
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// right button
- control.spy.expectedSequence = []
+ sequenceSpy.expectedSequence = []
mousePress(control, control.width / 2, control.height / 2, Qt.RightButton)
compare(control.pressed, false)
mouseRelease(control, control.width / 2, control.height / 2, Qt.RightButton)
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
control.destroy()
}
@@ -200,13 +206,15 @@ TestCase {
var control = checkBox.createObject(testCase)
verify(control)
- control.spy.expectedSequence = []
+ var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
+
+ sequenceSpy.expectedSequence = []
control.forceActiveFocus()
verify(control.activeFocus)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// check
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
"pressed",
["pressedChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
@@ -216,10 +224,10 @@ TestCase {
keyClick(Qt.Key_Space)
compare(control.checked, true)
compare(control.checkState, Qt.Checked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// uncheck
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.Checked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.Checked }],
"pressed",
["pressedChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
["checkStateChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
@@ -229,16 +237,16 @@ TestCase {
keyClick(Qt.Key_Space)
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// no change
- control.spy.expectedSequence = []
+ sequenceSpy.expectedSequence = []
var keys = [Qt.Key_Enter, Qt.Key_Return, Qt.Key_Escape, Qt.Key_Tab]
for (var i = 0; i < keys.length; ++i) {
- control.spy.reset()
+ sequenceSpy.reset()
keyClick(keys[i])
compare(control.checked, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
}
control.destroy()
@@ -323,7 +331,9 @@ TestCase {
function test_tristate() {
var control = checkBox.createObject(testCase)
- control.spy.expectedSequence = []
+ var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
+
+ sequenceSpy.expectedSequence = []
control.forceActiveFocus()
verify(control.activeFocus)
@@ -331,16 +341,16 @@ TestCase {
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
- control.spy.expectedSequence = [["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
+ sequenceSpy.expectedSequence = [["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
["checkedChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }]]
control.checkState = Qt.PartiallyChecked
compare(control.tristate, true)
compare(control.checked, true)
compare(control.checkState, Qt.PartiallyChecked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// key: partial -> checked
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.PartiallyChecked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.PartiallyChecked }],
"pressed",
["pressedChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
@@ -349,10 +359,10 @@ TestCase {
keyClick(Qt.Key_Space)
compare(control.checked, true)
compare(control.checkState, Qt.Checked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// key: checked -> unchecked
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.Checked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.Checked }],
"pressed",
["pressedChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
["checkStateChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
@@ -362,10 +372,10 @@ TestCase {
keyClick(Qt.Key_Space)
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// key: unchecked -> partial
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
"pressed",
["pressedChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
@@ -375,10 +385,10 @@ TestCase {
keyClick(Qt.Key_Space)
compare(control.checked, true)
compare(control.checkState, Qt.PartiallyChecked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// mouse: partial -> checked
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.PartiallyChecked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.PartiallyChecked }],
"pressed",
["pressedChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
@@ -387,10 +397,10 @@ TestCase {
mouseClick(control)
compare(control.checked, true)
compare(control.checkState, Qt.Checked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// mouse: checked -> unchecked
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.Checked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true, "checkState": Qt.Checked }],
"pressed",
["pressedChanged", { "pressed": false, "checked": true, "checkState": Qt.Checked }],
["checkStateChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
@@ -400,10 +410,10 @@ TestCase {
mouseClick(control)
compare(control.checked, false)
compare(control.checkState, Qt.Unchecked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// mouse: unchecked -> partial
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false, "checkState": Qt.Unchecked }],
"pressed",
["pressedChanged", { "pressed": false, "checked": false, "checkState": Qt.Unchecked }],
["checkStateChanged", { "pressed": false, "checked": true, "checkState": Qt.PartiallyChecked }],
@@ -413,7 +423,7 @@ TestCase {
mouseClick(control)
compare(control.checked, true)
compare(control.checkState, Qt.PartiallyChecked)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
control.destroy()
}
diff --git a/tests/auto/controls/data/tst_combobox.qml b/tests/auto/controls/data/tst_combobox.qml
index 479b1002..607de2e8 100644
--- a/tests/auto/controls/data/tst_combobox.qml
+++ b/tests/auto/controls/data/tst_combobox.qml
@@ -51,16 +51,6 @@ TestCase {
when: windowShown
name: "ComboBox"
- SignalSpy {
- id: activatedSpy
- signalName: "activated"
- }
-
- SignalSpy {
- id: highlightedSpy
- signalName: "highlighted"
- }
-
Component {
id: signalSpy
SignalSpy { }
@@ -80,22 +70,6 @@ TestCase {
}
}
- function init() {
- verify(!activatedSpy.target)
- compare(activatedSpy.count, 0)
-
- verify(!highlightedSpy.target)
- compare(highlightedSpy.count, 0)
- }
-
- function cleanup() {
- activatedSpy.target = null
- activatedSpy.clear()
-
- highlightedSpy.target = null
- highlightedSpy.clear()
- }
-
function test_defaults() {
var control = comboBox.createObject(testCase)
verify(control)
@@ -332,10 +306,10 @@ TestCase {
var control = comboBox.createObject(testCase, {model: 3})
verify(control)
- activatedSpy.target = control
+ var activatedSpy = signalSpy.createObject(control, {target: control, signalName: "activated"})
verify(activatedSpy.valid)
- highlightedSpy.target = control
+ var highlightedSpy = signalSpy.createObject(control, {target: control, signalName: "highlighted"})
verify(highlightedSpy.valid)
waitForRendering(control)
@@ -457,7 +431,7 @@ TestCase {
control.destroy()
}
- function test_keys_data() {
+ function test_keys_space_enter_escape_data() {
return [
{ tag: "space-space", key1: Qt.Key_Space, key2: Qt.Key_Space, showPopup: true, showPress: true, hidePopup: true, hidePress: true },
{ tag: "space-enter", key1: Qt.Key_Space, key2: Qt.Key_Enter, showPopup: true, showPress: true, hidePopup: true, hidePress: true },
@@ -470,7 +444,7 @@ TestCase {
]
}
- function test_keys(data) {
+ function test_keys_space_enter_escape(data) {
var control = comboBox.createObject(testCase, {model: 3})
verify(control)
@@ -493,7 +467,6 @@ TestCase {
// hide popup
keyPress(data.key2)
compare(control.pressed, data.hidePress)
- compare(control.popup.visible, data.showPopup)
keyRelease(data.key2)
compare(control.pressed, false)
tryCompare(control.popup, "visible", !data.hidePopup)
@@ -501,6 +474,162 @@ TestCase {
control.destroy()
}
+ function test_keys_home_end() {
+ var control = comboBox.createObject(testCase, {model: 5})
+ verify(control)
+
+ control.forceActiveFocus()
+ verify(control.activeFocus)
+ compare(control.currentIndex, 0)
+ compare(control.highlightedIndex, -1)
+
+ var activatedCount = 0
+ var activatedSpy = signalSpy.createObject(control, {target: control, signalName: "activated"})
+ verify(activatedSpy.valid)
+
+ var highlightedCount = 0
+ var highlightedSpy = signalSpy.createObject(control, {target: control, signalName: "highlighted"})
+ verify(highlightedSpy.valid)
+
+ var currentIndexCount = 0
+ var currentIndexSpy = signalSpy.createObject(control, {target: control, signalName: "currentIndexChanged"})
+ verify(currentIndexSpy.valid)
+
+ var highlightedIndexCount = 0
+ var highlightedIndexSpy = signalSpy.createObject(control, {target: control, signalName: "highlightedIndexChanged"})
+ verify(highlightedIndexSpy.valid)
+
+ // end (popup closed)
+ keyClick(Qt.Key_End)
+ compare(control.currentIndex, 4)
+ compare(currentIndexSpy.count, ++currentIndexCount)
+
+ compare(control.highlightedIndex, -1)
+ compare(highlightedIndexSpy.count, highlightedIndexCount)
+
+ compare(activatedSpy.count, ++activatedCount)
+ compare(activatedSpy.signalArguments[activatedCount-1][0], 4)
+
+ compare(highlightedSpy.count, highlightedCount)
+
+ // repeat (no changes/signals)
+ keyClick(Qt.Key_End)
+ compare(currentIndexSpy.count, currentIndexCount)
+ compare(highlightedIndexSpy.count, highlightedIndexCount)
+ compare(activatedSpy.count, activatedCount)
+ compare(highlightedSpy.count, highlightedCount)
+
+ // home (popup closed)
+ keyClick(Qt.Key_Home)
+ compare(control.currentIndex, 0)
+ compare(currentIndexSpy.count, ++currentIndexCount)
+
+ compare(control.highlightedIndex, -1)
+ compare(highlightedIndexSpy.count, highlightedIndexCount)
+
+ compare(activatedSpy.count, ++activatedCount)
+ compare(activatedSpy.signalArguments[activatedCount-1][0], 0)
+
+ compare(highlightedSpy.count, highlightedCount)
+
+ // repeat (no changes/signals)
+ keyClick(Qt.Key_Home)
+ compare(currentIndexSpy.count, currentIndexCount)
+ compare(highlightedIndexSpy.count, highlightedIndexCount)
+ compare(activatedSpy.count, activatedCount)
+ compare(highlightedSpy.count, highlightedCount)
+
+ control.popup.open()
+ compare(control.highlightedIndex, 0)
+ compare(highlightedIndexSpy.count, ++highlightedIndexCount)
+ compare(highlightedSpy.count, highlightedCount)
+
+ // end (popup open)
+ keyClick(Qt.Key_End)
+ compare(control.currentIndex, 0)
+ compare(currentIndexSpy.count, currentIndexCount)
+
+ compare(control.highlightedIndex, 4)
+ compare(highlightedIndexSpy.count, ++highlightedIndexCount)
+
+ compare(activatedSpy.count, activatedCount)
+
+ compare(highlightedSpy.count, ++highlightedCount)
+ compare(highlightedSpy.signalArguments[highlightedCount-1][0], 4)
+
+ // repeat (no changes/signals)
+ keyClick(Qt.Key_End)
+ compare(currentIndexSpy.count, currentIndexCount)
+ compare(highlightedIndexSpy.count, highlightedIndexCount)
+ compare(activatedSpy.count, activatedCount)
+ compare(highlightedSpy.count, highlightedCount)
+
+ // home (popup open)
+ keyClick(Qt.Key_Home)
+ compare(control.currentIndex, 0)
+ compare(currentIndexSpy.count, currentIndexCount)
+
+ compare(control.highlightedIndex, 0)
+ compare(highlightedIndexSpy.count, ++highlightedIndexCount)
+
+ compare(activatedSpy.count, activatedCount)
+
+ compare(highlightedSpy.count, ++highlightedCount)
+ compare(highlightedSpy.signalArguments[highlightedCount-1][0], 0)
+
+ // repeat (no changes/signals)
+ keyClick(Qt.Key_Home)
+ compare(currentIndexSpy.count, currentIndexCount)
+ compare(highlightedIndexSpy.count, highlightedIndexCount)
+ compare(activatedSpy.count, activatedCount)
+ compare(highlightedSpy.count, highlightedCount)
+
+ control.destroy()
+ }
+
+ function test_keySearch() {
+ var control = comboBox.createObject(testCase, {model: ["Banana", "Coco", "Coconut", "Apple", "Cocomuffin"]})
+ verify(control)
+
+ control.forceActiveFocus()
+ verify(control.activeFocus)
+
+ compare(control.currentIndex, 0)
+ compare(control.currentText, "Banana")
+
+ keyPress(Qt.Key_C)
+ compare(control.currentIndex, 1)
+ compare(control.currentText, "Coco")
+
+ // no match
+ keyPress(Qt.Key_N)
+ compare(control.currentIndex, 1)
+ compare(control.currentText, "Coco")
+
+ keyPress(Qt.Key_C)
+ compare(control.currentIndex, 2)
+ compare(control.currentText, "Coconut")
+
+ keyPress(Qt.Key_C)
+ compare(control.currentIndex, 4)
+ compare(control.currentText, "Cocomuffin")
+
+ // wrap
+ keyPress(Qt.Key_C)
+ compare(control.currentIndex, 1)
+ compare(control.currentText, "Coco")
+
+ keyPress(Qt.Key_A)
+ compare(control.currentIndex, 3)
+ compare(control.currentText, "Apple")
+
+ keyPress(Qt.Key_B)
+ compare(control.currentIndex, 0)
+ compare(control.currentText, "Banana")
+
+ control.destroy()
+ }
+
function test_popup() {
var control = comboBox.createObject(testCase, {model: 3})
verify(control)
@@ -544,10 +673,10 @@ TestCase {
var control = comboBox.createObject(testCase, {model: 3})
verify(control)
- activatedSpy.target = control
+ var activatedSpy = signalSpy.createObject(control, {target: control, signalName: "activated"})
verify(activatedSpy.valid)
- highlightedSpy.target = control
+ var highlightedSpy = signalSpy.createObject(control, {target: control, signalName: "highlighted"})
verify(highlightedSpy.valid)
mouseClick(control)
diff --git a/tests/auto/controls/data/tst_control.qml b/tests/auto/controls/data/tst_control.qml
index 4b7a60dc..3018498e 100644
--- a/tests/auto/controls/data/tst_control.qml
+++ b/tests/auto/controls/data/tst_control.qml
@@ -71,21 +71,6 @@ TestCase {
SignalSpy { }
}
- SignalSpy {
- id: mirroredSpy
- signalName: "mirroredChanged"
- }
-
- SignalSpy {
- id: availableWidthSpy
- signalName: "availableWidthChanged"
- }
-
- SignalSpy {
- id: availableHeightSpy
- signalName: "availableHeightChanged"
- }
-
function test_padding() {
var control = component.createObject(testCase)
verify(control)
@@ -150,10 +135,10 @@ TestCase {
var control = component.createObject(testCase)
verify(control)
- availableWidthSpy.target = control
- availableHeightSpy.target = control
-
+ var availableWidthSpy = signalSpy.createObject(control, {target: control, signalName: "availableWidthChanged"})
verify(availableWidthSpy.valid)
+
+ var availableHeightSpy = signalSpy.createObject(control, {target: control, signalName: "availableHeightChanged"})
verify(availableHeightSpy.valid)
var availableWidthChanges = 0
@@ -222,7 +207,7 @@ TestCase {
var control = component.createObject(testCase)
verify(control)
- mirroredSpy.target = control
+ var mirroredSpy = signalSpy.createObject(control, {target: control, signalName: "mirroredChanged"})
verify(mirroredSpy.valid)
control.locale = Qt.locale("en_US")
@@ -862,8 +847,15 @@ TestCase {
compare(control.mirroredspy_5.count, 1)
}
- function test_hover() {
- var control = component.createObject(testCase, {width: 100, height: 100})
+ function test_hover_data() {
+ return [
+ { tag: "normal", target: component, pressed: false },
+ { tag: "pressed", target: button, pressed: true }
+ ]
+ }
+
+ function test_hover(data) {
+ var control = data.target.createObject(testCase, {width: 100, height: 100})
verify(control)
compare(control.hovered, false)
@@ -877,9 +869,19 @@ TestCase {
mouseMove(control, control.width / 2, control.height / 2)
compare(control.hovered, true)
+ if (data.pressed) {
+ mousePress(control, control.width / 2, control.height / 2)
+ compare(control.hovered, true)
+ }
+
mouseMove(control, -10, -10)
compare(control.hovered, false)
+ if (data.pressed) {
+ mouseRelease(control, -10, control.height / 2)
+ compare(control.hovered, false)
+ }
+
mouseMove(control, control.width / 2, control.height / 2)
compare(control.hovered, true)
diff --git a/tests/auto/controls/data/tst_popup.qml b/tests/auto/controls/data/tst_popup.qml
index 8d8f94b7..0ca8ce57 100644
--- a/tests/auto/controls/data/tst_popup.qml
+++ b/tests/auto/controls/data/tst_popup.qml
@@ -72,65 +72,28 @@ TestCase {
Rectangle { }
}
- SignalSpy {
- id: availableWidthSpy
- signalName: "availableWidthChanged"
- }
-
- SignalSpy {
- id: availableHeightSpy
- signalName: "availableHeightChanged"
- }
-
- SignalSpy {
- id: paddingSpy
- signalName: "paddingChanged"
- }
-
- SignalSpy {
- id: topPaddingSpy
- signalName: "topPaddingChanged"
- }
-
- SignalSpy {
- id: leftPaddingSpy
- signalName: "leftPaddingChanged"
- }
-
- SignalSpy {
- id: rightPaddingSpy
- signalName: "rightPaddingChanged"
- }
-
- SignalSpy {
- id: bottomPaddingSpy
- signalName: "bottomPaddingChanged"
- }
-
- SignalSpy {
- id: xSpy
- signalName: "xChanged"
- }
-
- SignalSpy {
- id: ySpy
- signalName: "yChanged"
+ Component {
+ id: signalSpy
+ SignalSpy { }
}
function test_padding() {
var control = popupTemplate.createObject(testCase)
verify(control)
- paddingSpy.target = control
- topPaddingSpy.target = control
- leftPaddingSpy.target = control
- rightPaddingSpy.target = control
- bottomPaddingSpy.target = control
-
+ var paddingSpy = signalSpy.createObject(testCase, {target: control, signalName: "paddingChanged"})
verify(paddingSpy.valid)
+
+ var topPaddingSpy = signalSpy.createObject(testCase, {target: control, signalName: "topPaddingChanged"})
verify(topPaddingSpy.valid)
+
+ var leftPaddingSpy = signalSpy.createObject(testCase, {target: control, signalName: "leftPaddingChanged"})
verify(leftPaddingSpy.valid)
+
+ var rightPaddingSpy = signalSpy.createObject(testCase, {target: control, signalName: "rightPaddingChanged"})
verify(rightPaddingSpy.valid)
+
+ var bottomPaddingSpy = signalSpy.createObject(testCase, {target: control, signalName: "bottomPaddingChanged"})
verify(bottomPaddingSpy.valid)
var paddingChanges = 0
@@ -229,10 +192,10 @@ TestCase {
var control = popupTemplate.createObject(testCase)
verify(control)
- availableWidthSpy.target = control
- availableHeightSpy.target = control
-
+ var availableWidthSpy = signalSpy.createObject(testCase, {target: control, signalName: "availableWidthChanged"})
verify(availableWidthSpy.valid)
+
+ var availableHeightSpy = signalSpy.createObject(testCase, {target: control, signalName: "availableHeightChanged"})
verify(availableHeightSpy.valid)
var availableWidthChanges = 0
@@ -302,10 +265,10 @@ TestCase {
verify(control)
verify(control.visible)
- xSpy.target = control
- ySpy.target = control
-
+ var xSpy = signalSpy.createObject(testCase, {target: control, signalName: "xChanged"})
verify(xSpy.valid)
+
+ var ySpy = signalSpy.createObject(testCase, {target: control, signalName: "yChanged"})
verify(ySpy.valid)
// moving outside margins does not trigger change notifiers
@@ -1266,4 +1229,35 @@ TestCase {
control.destroy()
}
+
+ Component {
+ id: xyBindingLoop
+ ApplicationWindow {
+ id: window
+ width: 360
+ height: 360
+ visible: true
+ property alias popup: popup
+
+ Popup {
+ id: popup
+ visible: true
+ x: (parent.width - width) / 2
+ y: (parent.height - height) / 2
+ Label {
+ text: "Content"
+ anchors.fill: parent
+ }
+ }
+ }
+ }
+
+ function test_xyBindingLoop() {
+ var window = xyBindingLoop.createObject(testCase)
+ var control = window.popup
+ waitForRendering(control.contentItem)
+ compare(control.x, (control.parent.width - control.width) / 2)
+ compare(control.y, (control.parent.height - control.height) / 2)
+ window.destroy()
+ }
}
diff --git a/tests/auto/controls/data/tst_radiobutton.qml b/tests/auto/controls/data/tst_radiobutton.qml
index bd3850c8..e86b862e 100644
--- a/tests/auto/controls/data/tst_radiobutton.qml
+++ b/tests/auto/controls/data/tst_radiobutton.qml
@@ -52,13 +52,13 @@ TestCase {
Component {
id: radioButton
- RadioButton {
- id: control
+ RadioButton { }
+ }
- property SignalSequenceSpy spy: SignalSequenceSpy {
- target: control
- signals: ["pressed", "released", "canceled", "clicked", "pressedChanged", "checkedChanged"]
- }
+ Component {
+ id: signalSequenceSpy
+ SignalSequenceSpy {
+ signals: ["pressed", "released", "canceled", "clicked", "pressedChanged", "checkedChanged"]
}
}
@@ -79,19 +79,21 @@ TestCase {
var control = radioButton.createObject(testCase)
verify(control)
- control.spy.expectedSequence = [] // No change expected
+ var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
+
+ sequenceSpy.expectedSequence = [] // No change expected
compare(control.checked, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.expectedSequence = ["checkedChanged"]
+ sequenceSpy.expectedSequence = ["checkedChanged"]
control.checked = true
compare(control.checked, true)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
- control.spy.reset()
+ sequenceSpy.reset()
control.checked = false
compare(control.checked, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
control.destroy()
}
@@ -100,59 +102,61 @@ TestCase {
var control = radioButton.createObject(testCase)
verify(control)
+ var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
+
// check
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false }],
"pressed"]
mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton)
compare(control.pressed, true)
- verify(control.spy.success)
- control.spy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": false }],
+ verify(sequenceSpy.success)
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": false }],
["checkedChanged", { "pressed": false, "checked": true }],
"released",
"clicked"]
mouseRelease(control, control.width / 2, control.height / 2, Qt.LeftButton)
compare(control.checked, true)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// attempt uncheck
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true }],
"pressed"]
mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton)
compare(control.pressed, true)
- verify(control.spy.success)
- control.spy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": true }],
+ verify(sequenceSpy.success)
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": true }],
"released",
"clicked"]
mouseRelease(control, control.width / 2, control.height / 2, Qt.LeftButton)
compare(control.checked, true)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// release outside
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true }],
"pressed"]
mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton)
compare(control.pressed, true)
- verify(control.spy.success)
- control.spy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": true }]]
+ verify(sequenceSpy.success)
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false, "checked": true }]]
mouseMove(control, control.width * 2, control.height * 2, 0, Qt.LeftButton)
compare(control.pressed, false)
- control.spy.expectedSequence = [["canceled", { "pressed": false, "checked": true }]]
+ sequenceSpy.expectedSequence = [["canceled", { "pressed": false, "checked": true }]]
mouseRelease(control, control.width * 2, control.height * 2, Qt.LeftButton)
compare(control.checked, true)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// right button
- control.spy.expectedSequence = []
+ sequenceSpy.expectedSequence = []
mousePress(control, control.width / 2, control.height / 2, Qt.RightButton)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
mouseRelease(control, control.width / 2, control.height / 2, Qt.RightButton)
compare(control.checked, true)
compare(control.pressed, false)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
control.destroy()
}
@@ -161,13 +165,15 @@ TestCase {
var control = radioButton.createObject(testCase)
verify(control)
- control.spy.expectedSequence = []
+ var sequenceSpy = signalSequenceSpy.createObject(control, {target: control})
+
+ sequenceSpy.expectedSequence = []
control.forceActiveFocus()
verify(control.activeFocus)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// check
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": false }],
"pressed",
["pressedChanged", { "pressed": false, "checked": false }],
["checkedChanged", { "pressed": false, "checked": true }],
@@ -175,26 +181,26 @@ TestCase {
"clicked"]
keyClick(Qt.Key_Space)
compare(control.checked, true)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// attempt uncheck
- control.spy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true }],
+ sequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true, "checked": true }],
"pressed",
["pressedChanged", { "pressed": false, "checked": true }],
"released",
"clicked"]
keyClick(Qt.Key_Space)
compare(control.checked, true)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
// no change
- control.spy.expectedSequence = []
+ sequenceSpy.expectedSequence = []
var keys = [Qt.Key_Enter, Qt.Key_Return, Qt.Key_Escape, Qt.Key_Tab]
for (var i = 0; i < keys.length; ++i) {
- control.spy.reset()
+ sequenceSpy.reset()
keyClick(keys[i])
compare(control.checked, true)
- verify(control.spy.success)
+ verify(sequenceSpy.success)
}
control.destroy()
diff --git a/tests/auto/controls/data/tst_rangeslider.qml b/tests/auto/controls/data/tst_rangeslider.qml
index 581a079c..3167be0b 100644
--- a/tests/auto/controls/data/tst_rangeslider.qml
+++ b/tests/auto/controls/data/tst_rangeslider.qml
@@ -50,14 +50,9 @@ TestCase {
when: windowShown
name: "RangeSlider"
- SignalSpy {
- id: firstPressedSpy
- signalName: "pressedChanged"
- }
-
- SignalSpy {
- id: secondPressedSpy
- signalName: "pressedChanged"
+ Component {
+ id: signalSpy
+ SignalSpy { }
}
Component {
@@ -84,21 +79,6 @@ TestCase {
}
}
- function init() {
- verify(!firstPressedSpy.target)
- compare(firstPressedSpy.count, 0)
-
- verify(!secondPressedSpy.target)
- compare(secondPressedSpy.count, 0)
- }
-
- function cleanup() {
- firstPressedSpy.target = null
- firstPressedSpy.clear()
- secondPressedSpy.target = null
- secondPressedSpy.clear()
- }
-
function test_defaults() {
var control = sliderComponent.createObject(testCase)
verify(control)
@@ -303,10 +283,10 @@ TestCase {
var control = sliderComponent.createObject(testCase, { orientation: data.orientation })
verify(control)
- firstPressedSpy.target = control.first
+ var firstPressedSpy = signalSpy.createObject(control, {target: control.first, signalName: "pressedChanged"})
verify(firstPressedSpy.valid)
- secondPressedSpy.target = control.second
+ var secondPressedSpy = signalSpy.createObject(control, {target: control.second, signalName: "pressedChanged"})
verify(secondPressedSpy.valid)
mousePress(control, control.width * 0.25, control.height * 0.75, Qt.LeftButton)
@@ -473,7 +453,7 @@ TestCase {
var pressedCount = 0
- firstPressedSpy.target = control.first
+ var firstPressedSpy = signalSpy.createObject(control, {target: control.first, signalName: "pressedChanged"})
verify(firstPressedSpy.valid)
control.first.handle.forceActiveFocus()
@@ -511,7 +491,7 @@ TestCase {
control.stepSize = 0.25
pressedCount = 0;
- secondPressedSpy.target = control.second
+ var secondPressedSpy = signalSpy.createObject(control, {target: control.second, signalName: "pressedChanged"})
verify(secondPressedSpy.valid)
control.second.handle.forceActiveFocus()
@@ -553,7 +533,7 @@ TestCase {
var control = sliderComponent.createObject(testCase, { leftPadding: 10, rightPadding: 20 })
verify(control)
- firstPressedSpy.target = control.first
+ var firstPressedSpy = signalSpy.createObject(control, {target: control.first, signalName: "pressedChanged"})
verify(firstPressedSpy.valid)
mousePress(control, control.first.handle.x, control.first.handle.y, Qt.LeftButton)
diff --git a/tests/auto/controls/data/tst_scrollbar.qml b/tests/auto/controls/data/tst_scrollbar.qml
index 7dc60d97..7c83cca9 100644
--- a/tests/auto/controls/data/tst_scrollbar.qml
+++ b/tests/auto/controls/data/tst_scrollbar.qml
@@ -50,9 +50,9 @@ TestCase {
when: windowShown
name: "ScrollBar"
- SignalSpy{
- id: pressedSpy
- signalName: "pressedChanged"
+ Component {
+ id: signalSpy
+ SignalSpy { }
}
Component {
@@ -72,16 +72,6 @@ TestCase {
}
}
- function init() {
- verify(!pressedSpy.target)
- compare(pressedSpy.count, 0)
- }
-
- function cleanup() {
- pressedSpy.target = null
- pressedSpy.clear()
- }
-
function test_attach() {
var container = flickable.createObject(testCase)
verify(container)
@@ -151,6 +141,22 @@ TestCase {
compare(horizontal.size, container.visibleArea.widthRatio)
compare(horizontal.position, container.visibleArea.xPosition)
+ var oldY = vertical.y
+ var oldHeight = vertical.height
+ vertical.parent = testCase
+ vertical.y -= 10
+ container.height += 10
+ compare(vertical.y, oldY - 10)
+ compare(vertical.height, oldHeight)
+
+ var oldX = horizontal.x
+ var oldWidth = horizontal.width
+ horizontal.parent = testCase
+ horizontal.x -= 10
+ container.width += 10
+ compare(horizontal.x, oldX - 10)
+ compare(horizontal.width, oldWidth)
+
container.destroy()
}
@@ -165,7 +171,7 @@ TestCase {
var control = scrollBar.createObject(testCase, data.properties)
verify(control)
- pressedSpy.target = control
+ var pressedSpy = signalSpy.createObject(control, {target: control, signalName: "pressedChanged"})
verify(pressedSpy.valid)
mousePress(control, 0, 0, Qt.LeftButton)
@@ -211,6 +217,31 @@ TestCase {
control.destroy()
}
+ function test_increase_decrease_data() {
+ return [
+ { tag: "increase:active", increase: true, active: true },
+ { tag: "decrease:active", increase: false, active: true },
+ { tag: "increase:inactive", increase: true, active: false },
+ { tag: "decrease:inactive", increase: false, active: false }
+ ]
+ }
+
+ function test_increase_decrease(data) {
+ var control = scrollBar.createObject(testCase, {position: 0.5, active: data.active})
+ verify(control)
+
+ if (data.increase) {
+ control.increase()
+ compare(control.position, 0.6)
+ } else {
+ control.decrease()
+ compare(control.position, 0.4)
+ }
+ compare(control.active, data.active)
+
+ control.destroy()
+ }
+
function test_stepSize_data() {
return [
{ tag: "0.0", stepSize: 0.0 },
diff --git a/tests/auto/controls/data/tst_scrollindicator.qml b/tests/auto/controls/data/tst_scrollindicator.qml
index 90d9287a..f5e57e2d 100644
--- a/tests/auto/controls/data/tst_scrollindicator.qml
+++ b/tests/auto/controls/data/tst_scrollindicator.qml
@@ -136,6 +136,22 @@ TestCase {
compare(horizontal.size, container.visibleArea.widthRatio)
compare(horizontal.position, container.visibleArea.xPosition)
+ var oldY = vertical.y
+ var oldHeight = vertical.height
+ vertical.parent = testCase
+ vertical.y -= 10
+ container.height += 10
+ compare(vertical.y, oldY - 10)
+ compare(vertical.height, oldHeight)
+
+ var oldX = horizontal.x
+ var oldWidth = horizontal.width
+ horizontal.parent = testCase
+ horizontal.x -= 10
+ container.width += 10
+ compare(horizontal.x, oldX - 10)
+ compare(horizontal.width, oldWidth)
+
container.destroy()
}
diff --git a/tests/auto/controls/data/tst_slider.qml b/tests/auto/controls/data/tst_slider.qml
index bec4d236..4a698076 100644
--- a/tests/auto/controls/data/tst_slider.qml
+++ b/tests/auto/controls/data/tst_slider.qml
@@ -50,9 +50,9 @@ TestCase {
when: windowShown
name: "Slider"
- SignalSpy{
- id: pressedSpy
- signalName: "pressedChanged"
+ Component {
+ id: signalSpy
+ SignalSpy { }
}
Component {
@@ -60,16 +60,6 @@ TestCase {
Slider { }
}
- function init() {
- verify(!pressedSpy.target)
- compare(pressedSpy.count, 0)
- }
-
- function cleanup() {
- pressedSpy.target = null
- pressedSpy.clear()
- }
-
function test_defaults() {
var control = slider.createObject(testCase)
verify(control)
@@ -232,7 +222,7 @@ TestCase {
var control = slider.createObject(testCase, {orientation: data.orientation})
verify(control)
- pressedSpy.target = control
+ var pressedSpy = signalSpy.createObject(control, {target: control, signalName: "pressedChanged"})
verify(pressedSpy.valid)
mousePress(control, 0, 0, Qt.LeftButton)
@@ -308,7 +298,7 @@ TestCase {
var pressedCount = 0
- pressedSpy.target = control
+ var pressedSpy = signalSpy.createObject(control, {target: control, signalName: "pressedChanged"})
verify(pressedSpy.valid)
control.forceActiveFocus()
@@ -380,7 +370,7 @@ TestCase {
var control = slider.createObject(testCase, {leftPadding: 10, rightPadding: 20})
verify(control)
- pressedSpy.target = control
+ var pressedSpy = signalSpy.createObject(control, {target: control, signalName: "pressedChanged"})
verify(pressedSpy.valid)
mousePress(control, 0, 0, Qt.LeftButton)
diff --git a/tests/auto/controls/data/tst_spinbox.qml b/tests/auto/controls/data/tst_spinbox.qml
index b370a05f..f2d8d3ef 100644
--- a/tests/auto/controls/data/tst_spinbox.qml
+++ b/tests/auto/controls/data/tst_spinbox.qml
@@ -50,14 +50,9 @@ TestCase {
when: windowShown
name: "SpinBox"
- SignalSpy{
- id: upPressedSpy
- signalName: "pressedChanged"
- }
-
- SignalSpy{
- id: downPressedSpy
- signalName: "pressedChanged"
+ Component {
+ id: signalSpy
+ SignalSpy { }
}
Component {
@@ -65,20 +60,6 @@ TestCase {
SpinBox { }
}
- function init() {
- verify(!upPressedSpy.target)
- compare(upPressedSpy.count, 0)
- verify(!downPressedSpy.target)
- compare(downPressedSpy.count, 0)
- }
-
- function cleanup() {
- upPressedSpy.target = null
- upPressedSpy.clear()
- downPressedSpy.target = null
- downPressedSpy.clear()
- }
-
function test_defaults() {
var control = spinBox.createObject(testCase)
verify(control)
@@ -190,9 +171,12 @@ TestCase {
var control = spinBox.createObject(testCase, {stepSize: 50})
verify(control)
- upPressedSpy.target = control.up
+ var upPressedSpy = signalSpy.createObject(control, {target: control.up, signalName: "pressedChanged"})
verify(upPressedSpy.valid)
+ var downPressedSpy = signalSpy.createObject(control, {target: control.down, signalName: "pressedChanged"})
+ verify(downPressedSpy.valid)
+
mousePress(control.up.indicator)
compare(upPressedSpy.count, 1)
compare(control.up.pressed, true)
@@ -225,9 +209,6 @@ TestCase {
compare(control.down.pressed, false)
compare(control.value, control.to)
- downPressedSpy.target = control.down
- verify(downPressedSpy.valid)
-
control.value = 50;
mousePress(control.down.indicator)
compare(downPressedSpy.count, 1)
@@ -271,10 +252,10 @@ TestCase {
var upPressedCount = 0
var downPressedCount = 0
- upPressedSpy.target = control.up
+ var upPressedSpy = signalSpy.createObject(control, {target: control.up, signalName: "pressedChanged"})
verify(upPressedSpy.valid)
- downPressedSpy.target = control.down
+ var downPressedSpy = signalSpy.createObject(control, {target: control.down, signalName: "pressedChanged"})
verify(downPressedSpy.valid)
control.forceActiveFocus()
@@ -510,4 +491,66 @@ TestCase {
control.destroy()
}
+
+ function test_autoRepeat() {
+ var control = spinBox.createObject(testCase)
+ verify(control)
+
+ compare(control.value, 0)
+
+ var valueSpy = signalSpy.createObject(control, {target: control, signalName: "valueChanged"})
+ verify(valueSpy.valid)
+
+ var countBefore = 0
+
+ // repeat up
+ mousePress(control.up.indicator)
+ verify(control.up.pressed)
+ compare(valueSpy.count, 0)
+ valueSpy.wait()
+ valueSpy.wait()
+ countBefore = valueSpy.count
+ mouseRelease(control.up.indicator)
+ verify(!control.up.pressed)
+ compare(valueSpy.count, countBefore)
+
+ valueSpy.clear()
+
+ // repeat down
+ mousePress(control.down.indicator)
+ verify(control.down.pressed)
+ compare(valueSpy.count, 0)
+ valueSpy.wait()
+ valueSpy.wait()
+ countBefore = valueSpy.count
+ mouseRelease(control.down.indicator)
+ verify(!control.down.pressed)
+ compare(valueSpy.count, countBefore)
+
+ mousePress(control.up.indicator)
+ verify(control.up.pressed)
+ valueSpy.wait()
+
+ // move inside during repeat -> continue repeat (QTBUG-57085)
+ mouseMove(control.up.indicator, control.up.indicator.width / 4, control.up.indicator.height / 4)
+ verify(control.up.pressed)
+ valueSpy.wait()
+
+ valueSpy.clear()
+
+ // move outside during repeat -> stop repeat
+ mouseMove(control.up.indicator, -1, -1)
+ verify(!control.up.pressed)
+ // NOTE: The following wait() is NOT a reliable way to test that the
+ // auto-repeat timer is not running, but there's no way dig into the
+ // private APIs from QML. If this test ever fails in the future, it
+ // indicates that the auto-repeat timer logic is broken.
+ wait(125)
+ compare(valueSpy.count, 0)
+
+ mouseRelease(control.up.indicator, -1, -1)
+ verify(!control.up.pressed)
+
+ control.destroy()
+ }
}
diff --git a/tests/auto/controls/data/tst_stackview.qml b/tests/auto/controls/data/tst_stackview.qml
index ab6ce332..28a22306 100644
--- a/tests/auto/controls/data/tst_stackview.qml
+++ b/tests/auto/controls/data/tst_stackview.qml
@@ -59,6 +59,11 @@ TestCase {
StackView { }
}
+ Component {
+ id: signalSpy
+ SignalSpy { }
+ }
+
function test_initialItem() {
var control1 = stackView.createObject(testCase)
verify(control1)
@@ -87,18 +92,13 @@ TestCase {
control.destroy()
}
- SignalSpy {
- id: busySpy
- signalName: "busyChanged"
- }
-
function test_busy() {
var control = stackView.createObject(testCase)
verify(control)
compare(control.busy, false)
var busyCount = 0
- busySpy.target = control
+ var busySpy = signalSpy.createObject(control, {target: control, signalName: "busyChanged"})
verify(busySpy.valid)
control.push(component)
diff --git a/tests/auto/controls/data/tst_swipedelegate.qml b/tests/auto/controls/data/tst_swipedelegate.qml
index 16cfea14..0404fd86 100644
--- a/tests/auto/controls/data/tst_swipedelegate.qml
+++ b/tests/auto/controls/data/tst_swipedelegate.qml
@@ -304,7 +304,7 @@ TestCase {
var control = swipeDelegateComponent.createObject(testCase);
verify(control);
- var overDragDistance = dragDistance * 1.1;
+ var overDragDistance = Math.round(dragDistance * 1.1);
mouseSignalSequenceSpy.target = control;
mouseSignalSequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true }], "pressed"];
@@ -361,7 +361,7 @@ TestCase {
verify(control.swipe.rightItem);
verify(!control.swipe.rightItem.visible);
- mouseSignalSequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false }], "released", "clicked"];
+ mouseSignalSequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false }], "canceled"];
mouseRelease(control, control.width / 2, control.height / 2);
verify(!control.pressed);
compare(control.swipe.position, 1.0);
@@ -388,7 +388,8 @@ TestCase {
verify(!control.swipe.complete);
compare(control.swipe.position, 1.0 - overDragDistance / control.width);
- mouseSignalSequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false }], "released", "clicked"];
+ // Since we went over the drag distance, we should expect canceled() to be emitted.
+ mouseSignalSequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false }], "canceled"];
mouseRelease(control, control.width * 0.4, control.height / 2);
verify(!control.pressed);
compare(control.swipe.position, 1.0);
@@ -409,7 +410,7 @@ TestCase {
verify(!control.swipe.complete);
compare(control.swipe.position, 0.4);
- mouseSignalSequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false }], "released", "clicked"];
+ mouseSignalSequenceSpy.expectedSequence = [["pressedChanged", { "pressed": false }], "canceled"];
mouseRelease(control, control.width * -0.1, control.height / 2);
verify(!control.pressed);
compare(control.swipe.position, 0.0);
@@ -433,7 +434,7 @@ TestCase {
var control = swipeDelegateComponent.createObject(testCase);
verify(control);
- var distance = dragDistance * 1.1;
+ var distance = Math.round(dragDistance * 1.1);
if (distance >= control.width / 2)
skip("This test requires a startDragDistance that is less than half the width of the control");
@@ -826,7 +827,7 @@ TestCase {
control.swipe.left = smallLeftComponent;
// Ensure that the position is scaled to the width of the currently visible delegate.
- var overDragDistance = dragDistance * 1.1;
+ var overDragDistance = Math.round(dragDistance * 1.1);
mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton);
mouseMove(control, control.width / 2 + overDragDistance, control.height / 2, Qt.LeftButton);
verify(control.swipe.leftItem);
@@ -885,7 +886,7 @@ TestCase {
mousePress(control, control.swipe.leftItem.width, control.height / 2, Qt.LeftButton);
compare(leftVisibleSpy.count, 0);
compare(rightVisibleSpy.count, 0);
- var newX = control.swipe.leftItem.width - dragDistance * 1.1;
+ var newX = control.swipe.leftItem.width - Math.round(dragDistance * 1.1);
mouseMove(control, newX, control.height / 2, Qt.LeftButton, Qt.LeftButton);
compare(leftVisibleSpy.count, 0);
compare(rightVisibleSpy.count, 0);
@@ -1033,4 +1034,43 @@ TestCase {
control.destroy();
}
+
+ function test_releaseOutside_data() {
+ return [
+ { tag: "no delegates", component: emptySwipeDelegateComponent },
+ { tag: "delegates", component: swipeDelegateComponent },
+ ];
+ }
+
+ function test_releaseOutside(data) {
+ var control = data.component.createObject(testCase);
+ verify(control);
+
+ // Press and then release below the control.
+ mouseSignalSequenceSpy.target = control;
+ mouseSignalSequenceSpy.expectedSequence = [["pressedChanged", { "pressed": true }], "pressed", ["pressedChanged", { "pressed": false }]];
+ mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton);
+ mouseMove(control, control.width / 2, control.height + 10, Qt.LeftButton);
+ verify(mouseSignalSequenceSpy.success);
+
+ mouseSignalSequenceSpy.expectedSequence = ["canceled"];
+ mouseRelease(control, control.width / 2, control.height + 10, Qt.LeftButton);
+ verify(mouseSignalSequenceSpy.success);
+
+ // Press and then release to the right of the control.
+ var hasDelegates = control.swipe.left || control.swipe.right || control.swipe.behind;
+ mouseSignalSequenceSpy.target = control;
+ mouseSignalSequenceSpy.expectedSequence = hasDelegates
+ ? [["pressedChanged", { "pressed": true }], "pressed"]
+ : [["pressedChanged", { "pressed": true }], "pressed", ["pressedChanged", { "pressed": false }]];
+ mousePress(control, control.width / 2, control.height / 2, Qt.LeftButton);
+ mouseMove(control, control.width + 10, control.height / 2, Qt.LeftButton);
+ if (hasDelegates)
+ verify(control.swipe.position > 0);
+ verify(mouseSignalSequenceSpy.success);
+
+ mouseSignalSequenceSpy.expectedSequence = hasDelegates ? [["pressedChanged", { "pressed": false }], "canceled"] : ["canceled"];
+ mouseRelease(control, control.width + 10, control.height / 2, Qt.LeftButton);
+ verify(mouseSignalSequenceSpy.success);
+ }
}
diff --git a/tests/auto/controls/data/tst_swipeview.qml b/tests/auto/controls/data/tst_swipeview.qml
index df22bb09..3afcdf16 100644
--- a/tests/auto/controls/data/tst_swipeview.qml
+++ b/tests/auto/controls/data/tst_swipeview.qml
@@ -60,20 +60,16 @@ TestCase {
Text { }
}
- SignalSpy {
- id: currentItemChangedSpy
- signalName: "currentItemChanged"
- }
-
- function cleanup() {
- currentItemChangedSpy.clear()
- currentItemChangedSpy.target = null
+ Component {
+ id: signalSpy
+ SignalSpy { }
}
function test_current() {
var control = swipeView.createObject(testCase)
- currentItemChangedSpy.target = control
+ var currentItemChangedSpy = signalSpy.createObject(testCase, {target: control, signalName: "currentItemChanged"})
+ verify(currentItemChangedSpy.valid)
compare(control.count, 0)
compare(control.currentIndex, -1)
@@ -146,7 +142,8 @@ TestCase {
control.currentIndexChanged.connect(verifyCurrentIndexCountDiff)
control.countChanged.connect(verifyCurrentIndexCountDiff)
- currentItemChangedSpy.target = control;
+ var currentItemChangedSpy = signalSpy.createObject(testCase, {target: control, signalName: "currentItemChanged"})
+ verify(currentItemChangedSpy.valid)
compare(control.count, 0)
compare(control.currentIndex, -1)
diff --git a/tests/auto/controls/data/tst_tabbar.qml b/tests/auto/controls/data/tst_tabbar.qml
index eee3205f..9268f765 100644
--- a/tests/auto/controls/data/tst_tabbar.qml
+++ b/tests/auto/controls/data/tst_tabbar.qml
@@ -85,19 +85,9 @@ TestCase {
}
}
- SignalSpy {
- id: contentChildrenSpy
- signalName: "contentChildrenChanged"
- }
-
- function init() {
- verify(!contentChildrenSpy.target)
- compare(contentChildrenSpy.count, 0)
- }
-
- function cleanup() {
- contentChildrenSpy.target = null
- contentChildrenSpy.clear()
+ Component {
+ id: signalSpy
+ SignalSpy { }
}
function test_defaults() {
@@ -176,7 +166,7 @@ TestCase {
control.currentIndexChanged.connect(verifyCurrentIndexCountDiff)
control.countChanged.connect(verifyCurrentIndexCountDiff)
- contentChildrenSpy.target = control
+ var contentChildrenSpy = signalSpy.createObject(testCase, {target: control, signalName: "contentChildrenChanged"})
verify(contentChildrenSpy.valid)
compare(control.count, 0)
@@ -293,7 +283,7 @@ TestCase {
return true
}
- contentChildrenSpy.target = control
+ var contentChildrenSpy = signalSpy.createObject(testCase, {target: control, signalName: "contentChildrenChanged"})
verify(contentChildrenSpy.valid)
verify(compareObjectNames(control.contentData, ["object", "button1", "timer", "button2", ""]))
diff --git a/tests/auto/controls/data/tst_toolbutton.qml b/tests/auto/controls/data/tst_toolbutton.qml
index 1417c8e2..73431ca6 100644
--- a/tests/auto/controls/data/tst_toolbutton.qml
+++ b/tests/auto/controls/data/tst_toolbutton.qml
@@ -50,19 +50,9 @@ TestCase {
when: windowShown
name: "ToolButton"
- SignalSpy {
- id: pressedSpy
- signalName: "pressedChanged"
- }
-
- SignalSpy {
- id: downSpy
- signalName: "downChanged"
- }
-
- SignalSpy {
- id: clickedSpy
- signalName: "clicked"
+ Component {
+ id: signalSpy
+ SignalSpy { }
}
Component {
@@ -70,20 +60,6 @@ TestCase {
ToolButton { }
}
- function init() {
- verify(!pressedSpy.target)
- verify(!clickedSpy.target)
- compare(pressedSpy.count, 0)
- compare(clickedSpy.count, 0)
- }
-
- function cleanup() {
- pressedSpy.target = null
- clickedSpy.target = null
- pressedSpy.clear()
- clickedSpy.clear()
- }
-
function test_text() {
var control = toolButton.createObject(testCase)
verify(control)
@@ -101,11 +77,13 @@ TestCase {
var control = toolButton.createObject(testCase)
verify(control)
- pressedSpy.target = control
- downSpy.target = control
- clickedSpy.target = control
+ var pressedSpy = signalSpy.createObject(control, {target: control, signalName: "pressedChanged"})
verify(pressedSpy.valid)
+
+ var downSpy = signalSpy.createObject(control, {target: control, signalName: "downChanged"})
verify(downSpy.valid)
+
+ var clickedSpy = signalSpy.createObject(control, {target: control, signalName: "clicked"})
verify(clickedSpy.valid)
// check
@@ -170,7 +148,7 @@ TestCase {
var control = toolButton.createObject(testCase)
verify(control)
- clickedSpy.target = control
+ var clickedSpy = signalSpy.createObject(control, {target: control, signalName: "clicked"})
verify(clickedSpy.valid)
control.forceActiveFocus()