on xenial help sign in
Add small tests
e53328cAndrea Cimitan
qml/Dash/DashContent.qml+2−2
@@ -96,8 +96,7 @@ Item {
96 id: dashContentList
96 id: dashContentList
97 objectName: "dashContentList"
97 objectName: "dashContentList"
98
98
99− interactive: dashContent.scopes.loaded && currentItem && !currentItem.moving && !currentItem.navigationShown
99+ interactive: dashContent.scopes.loaded && currentItem && !currentItem.moving && !currentItem.navigationShown && !currentItem.settingsShown
100−
101 anchors.fill: parent
100 anchors.fill: parent
102 orientation: ListView.Horizontal
101 orientation: ListView.Horizontal
103 boundsBehavior: Flickable.DragAndOvershootBounds
102 boundsBehavior: Flickable.DragAndOvershootBounds
@@ -139,6 +138,7 @@ Item {
139 readonly property bool navigationShown: item ? item.navigationShown : false
138 readonly property bool navigationShown: item ? item.navigationShown : false
140 readonly property var categoryView: item ? item.categoryView : null
139 readonly property var categoryView: item ? item.categoryView : null
141 readonly property var theScope: scope
140 readonly property var theScope: scope
141+ readonly property bool settingsShown: item ? item.settingsShown : false
142
142
143 // these are needed for autopilot tests
143 // these are needed for autopilot tests
144 readonly property string scopeId: scope.id
144 readonly property string scopeId: scope.id
qml/Dash/ScopeSettings/ScopeSettingSwitch.qml+1
@@ -36,6 +36,7 @@ ScopeSetting {
36
36
37 Switch {
37 Switch {
38 id: control
38 id: control
39+ objectName: "control"
39 anchors {
40 anchors {
40 right: parent.right
41 right: parent.right
41 rightMargin: __margins
42 rightMargin: __margins
tests/qmltests/CMakeLists.txt+2
@@ -53,6 +53,8 @@ add_qml_test(Dash/Previews PreviewTextSummary)
53add_qml_test(Dash/Previews PreviewVideoPlayback)
53add_qml_test(Dash/Previews PreviewVideoPlayback)
54add_qml_test(Dash/Previews PreviewWidgetFactory)
54add_qml_test(Dash/Previews PreviewWidgetFactory)
55add_qml_test(Dash/Previews PreviewZoomableImage)
55add_qml_test(Dash/Previews PreviewZoomableImage)
56+add_qml_test(Dash/ScopeSettings ScopeSettingLabel)
57+add_qml_test(Dash/ScopeSettings ScopeSettingSwitch)
56add_qml_test(Greeter Lockscreen ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/full")
58add_qml_test(Greeter Lockscreen ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/full")
57add_qml_test(Greeter MultiGreeter ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/full")
59add_qml_test(Greeter MultiGreeter ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/full")
58add_qml_test(Greeter SingleGreeter ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/single")
60add_qml_test(Greeter SingleGreeter ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/single")
tests/qmltests/Dash/ScopeSettings/tst_ScopeSettingLabel.qmlnew file+58
@@ -0,0 +1,58 @@
1+/*
2+ * Copyright 2014 Canonical Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+import QtQuick 2.0
18+import QtTest 1.0
19+import "../../../../qml/Dash/ScopeSettings"
20+import Unity.Test 0.1 as UT
21+
22+Rectangle {
23+ id: root
24+ width: units.gu(40)
25+ height: units.gu(80)
26+
27+ property var settingData: {
28+ "displayName" : "Fake label setting",
29+ "value": "fake label"
30+ }
31+
32+ ScopeSettingLabel {
33+ id: scopeSettingLabel
34+ widgetData: settingData
35+ width: units.gu(40)
36+
37+ Rectangle {
38+ anchors.fill: parent
39+ color: "red"
40+ opacity: 0.1
41+ }
42+ }
43+
44+ SignalSpy {
45+ id: triggeredSpy
46+ target: scopeSettingSwitch
47+ signalName: "triggered"
48+ }
49+
50+ UT.UnityTestCase {
51+ id: testCase
52+ name: "ScopeSettingLabelTest"
53+ when: windowShown
54+
55+ function test_triggered() {
56+ }
57+ }
58+}
tests/qmltests/Dash/ScopeSettings/tst_ScopeSettingSwitch.qml+35−5
@@ -21,12 +21,42 @@ import Unity.Test 0.1 as UT
21
21
22Rectangle {
22Rectangle {
23 id: root
23 id: root
24− width: units.gu(60)
24+ width: units.gu(40)
25 height: units.gu(80)
25 height: units.gu(80)
26
26
27− property var widgetData: {
27+ property var settingData: {
28− "title": "THE TITLE",
28+ "displayName" : "Fake boolean setting",
29− "subtitle": "Something catchy",
29+ "value": true
30− "mascot": "../graphics/play_button.png"
30+ }
31+
32+ ScopeSettingSwitch {
33+ id: scopeSettingSwitch
34+ widgetData: settingData
35+ width: units.gu(40)
36+
37+ Rectangle {
38+ anchors.fill: parent
39+ color: "red"
40+ opacity: 0.1
41+ }
42+ }
43+
44+ SignalSpy {
45+ id: triggeredSpy
46+ target: scopeSettingSwitch
47+ signalName: "triggered"
48+ }
49+
50+ UT.UnityTestCase {
51+ id: testCase
52+ name: "ScopeSettingSwitchTest"
53+ when: windowShown
54+
55+ function test_triggered() {
56+ var control = findChild(scopeSettingSwitch, "control");
57+ mouseClick(control, control.width / 2, control.height / 2);
58+ triggeredSpy.wait();
59+ compare(triggeredSpy.signalArguments[0][0], false);
60+ }
31 }
61 }
32}
62}