File: tst_listitems_standard.11.qml

package info (click to toggle)
lomiri-ui-toolkit 1.3.5110%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 26,436 kB
  • sloc: cpp: 85,830; python: 5,537; sh: 1,344; javascript: 919; ansic: 573; makefile: 204
file content (138 lines) | stat: -rw-r--r-- 5,159 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
/*
 * Copyright 2012 Canonical Ltd.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation; version 3.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

import QtQuick 2.0
import QtTest 1.0
import Lomiri.Components 1.1
import Lomiri.Components.ListItems 1.0 as ListItem

Item {
    width: 400
    height: 400

    Rectangle {
        id: testItem
    }

    AbstractButton {
        id: testControl
        visible: false
    }

    ListItem.Standard {
        id: listItemStandard
        anchors.fill: parent
    }

    TestCase {
        name: "ListItemsStandardAPI"
        when: windowShown

        function test_clickToTrigger_bug1527811() {
            compare(listItemTriggeredSpy.valid, true, "triggered signal exists")
            var listItemTriggeredCount = listItemTriggeredSpy.count
            mouseMove(listItemStandard, 10, 10)
            mouseClick(listItemStandard, 10, 10, Qt.LeftButton)
            compare(listItemTriggeredSpy.count, listItemTriggeredCount + 1,
                    "Clicking the list item triggers it")
        }

        function test_fallbackIconSource() {
            expectFail("","https://bugs.launchpad.net/tavastia/+bug/1076762")
            compare(listItemStandard.fallbackIconSource,undefined,"fallbackIconSource is not set by default")
        }

        function test_control() {
            listItemStandard.control = testControl
            compare(listItemStandard.control,testControl,"set/get")
            listItemStandard.control = null
            compare(listItemStandard.control, null, "unset")
        }

        function test_clicked() {
            compare(listItemClickedSpy.valid, true, "clicked signal exists")
            compare(controlClickedSpy.valid, true, "control has clicked signal")
            var listItemClickedCount = listItemClickedSpy.count
            var controlClickedCount = controlClickedSpy.count
            mouseMove(listItemStandard, 10, 10)
            mouseClick(listItemStandard, 10, 10, Qt.LeftButton)
            listItemClickedCount++;
            compare(listItemClickedSpy.count, listItemClickedCount, "List item clicked triggered")
            listItemStandard.control = testControl;
            mouseMove(listItemStandard, 10, 10)
            mouseClick(listItemStandard, 10, 10, Qt.LeftButton)
            compare(listItemStandard.control, testControl, "control can be set")
            listItemClickedCount++;
            compare(controlClickedSpy.count, controlClickedCount, "Control clicked triggered")
            compare(listItemClickedSpy.count, listItemClickedCount, "List item clicked not triggered when there is a control")
            listItemStandard.control = null;
        }

        function test_bug1166982_disabled_control_clicked() {
            var controlClickedCount = controlClickedSpy.count
            listItemStandard.control = testControl
            testControl.enabled = false
            mouseMove(listItemStandard, 10, 10)
            mouseClick(listItemStandard, 10, 10, Qt.LeftButton)
            compare(controlClickedSpy.count, controlClickedCount, "Control clicked not triggered with disabled control")
            testControl.enabled = true
            listItemStandard.control = null
        }

        function test_icon() {
            ignoreWarning("WARNING: ListItems.Standard.icon is DEPRECATED. Use iconName and iconSource instead.")
            compare(listItemStandard.icon,undefined,"icon is not set by default")

            // test with url
            var newIcon = Qt.resolvedUrl("../../../examples/lomiri-ui-toolkit-gallery/small_avatar.png")
            listItemStandard.icon = newIcon
            compare(listItemStandard.icon,newIcon,"set/get from url")
        }

        function test_iconFrame() {
            compare(listItemStandard.iconFrame,true,"iconFrame is true by default")
        }

        function test_progression() {
            compare(listItemStandard.progression,false,"progression is false by default")
        }

        function test_text() {
            compare(listItemStandard.text,"","text is '' by default")
            var newText = "Hello World!"
            listItemStandard.text = newText
            compare(listItemStandard.text,newText,"set/get")
        }

        SignalSpy {
            id: listItemClickedSpy
            target: listItemStandard
            signalName: "clicked"
        }

        SignalSpy {
            id: controlClickedSpy
            target: testControl
            signalName: "clicked"
        }

        SignalSpy {
            id: listItemTriggeredSpy
            target: listItemStandard
            signalName: "triggered"
        }
    }
}