aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/controls
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2017-03-23 13:03:06 +0100
committerJ-P Nurmi <jpnurmi@qt.io>2017-03-24 13:27:48 +0000
commitaac1e246e46ab6ea70c14a61b1340d529763787d (patch)
tree51e891613536ad8a0a92af619b266678aa4c4ddb /tests/auto/controls
parent762d4ceb5fe19d97bcdbdba1dae74816126b7b75 (diff)
StackView: provide better warnings and errors
Check for valid URLs and test object types. Throw warnings when appropriate instead of crashing later. Task-number: QTBUG-59634 Change-Id: Ia269dc8afd31b618f1ff7aec94d684029cb78244 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'tests/auto/controls')
-rw-r--r--tests/auto/controls/data/tst_stackview.qml14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/auto/controls/data/tst_stackview.qml b/tests/auto/controls/data/tst_stackview.qml
index dd56d4f0..c56a04de 100644
--- a/tests/auto/controls/data/tst_stackview.qml
+++ b/tests/auto/controls/data/tst_stackview.qml
@@ -339,6 +339,10 @@ TestCase {
ignoreWarning(Qt.resolvedUrl("tst_stackview.qml") + ":69:9: QML StackView: push: nothing to push")
compare(control.push(StackView.Immediate), null)
+ // unsupported type
+ ignoreWarning(Qt.resolvedUrl("tst_stackview.qml") + ":69:9: QML StackView: push: QtObject is not supported. Must be Item or Component.")
+ control.push(Qt.createQmlObject('import QtQml 2.0; QtObject { }', control))
+
// push(item)
var item1 = component.createObject(control, {objectName:"1"})
compare(control.push(item1, StackView.Immediate), item1)
@@ -435,6 +439,10 @@ TestCase {
ignoreWarning(Qt.resolvedUrl("tst_stackview.qml") + ":69:9: QML StackView: replace: nothing to push")
compare(control.replace(StackView.Immediate), null)
+ // unsupported type
+ ignoreWarning(Qt.resolvedUrl("tst_stackview.qml") + ":69:9: QML StackView: replace: QtObject is not supported. Must be Item or Component.")
+ compare(control.replace(Qt.createQmlObject('import QtQml 2.0; QtObject { }', control)), null)
+
// replace(item)
var item1 = component.createObject(control, {objectName:"1"})
compare(control.replace(item1, StackView.Immediate), item1)
@@ -917,6 +925,12 @@ TestCase {
ignoreWarning(Qt.resolvedUrl("tst_stackview.qml") + ":69:9: QML StackView: replace: " + error)
control.replace(Qt.resolvedUrl("non-existent.qml"))
+ ignoreWarning(Qt.resolvedUrl("tst_stackview.qml") + ":69:9: QML StackView: push: invalid url: x://[v]")
+ control.push("x://[v]")
+
+ ignoreWarning(Qt.resolvedUrl("tst_stackview.qml") + ":69:9: QML StackView: replace: invalid url: x://[v]")
+ control.replace("x://[v]")
+
control.pop()
}