File: tst_itemSelector.qml

package info (click to toggle)
qtwebkit-opensource-src 5.7.1%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 291,692 kB
  • ctags: 268,122
  • sloc: cpp: 1,360,420; python: 70,286; ansic: 42,986; perl: 35,476; ruby: 12,236; objc: 9,465; xml: 8,396; asm: 3,873; yacc: 2,397; sh: 1,647; makefile: 650; lex: 644; java: 110
file content (117 lines) | stat: -rw-r--r-- 3,319 bytes parent folder | download | duplicates (10)
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
import QtQuick 2.0
import QtTest 1.0
import QtWebKit 3.0
import QtWebKit.experimental 1.0
import "../common"

TestWebView {
    id: webView

    width: 400
    height: 400

    property int initialSelection
    property int finalSelection
    property bool useAcceptDirectly
    property bool selectorLoaded

    experimental.itemSelector: Item {
        Component.onCompleted: {
            if (WebView.view.initialSelection != -1)
                model.items.select(WebView.view.initialSelection)

            if (WebView.view.finalSelection == -1)
                model.reject()
            else {
                if (useAcceptDirectly) {
                    model.accept(WebView.view.finalSelection)
                } else {
                    model.items.select(WebView.view.finalSelection)
                    model.accept()
                }
            }

            WebView.view.selectorLoaded = true
        }
    }

    SignalSpy {
        id: titleSpy
        target: webView
        signalName: "titleChanged"
    }

    TestCase {
        id: test
        name: "WebViewItemSelector"
        when: windowShown

        function init() {
            webView.initialSelection = -1
            webView.finalSelection = -1
            webView.useAcceptDirectly = false
            webView.selectorLoaded = false
            webView.url = Qt.resolvedUrl("../common/select.html")
            verify(webView.waitForLoadSucceeded())
            titleSpy.clear()
        }

        function openItemSelector() {
            webView.experimental.test.touchTap(webView, 15, 15)
        }

        function test_accept() {
            webView.finalSelection = 1
            openItemSelector()
            titleSpy.wait()
            compare(webView.title, "__closed__")
        }

        function test_acceptDirectly() {
            webView.finalSelection = 1
            webView.useAcceptDirectly = true
            openItemSelector()
            titleSpy.wait()
            compare(webView.title, "__closed__")
        }

        function test_selectFirstThenAccept() {
            webView.initialSelection = 1
            webView.finalSelection = 2
            openItemSelector()
            titleSpy.wait()
            compare(webView.title, "__all__")
        }

        function test_selectFirstThenAcceptDirectly() {
            webView.initialSelection = 1
            webView.finalSelection = 2
            webView.useAcceptDirectly = true
            openItemSelector()
            titleSpy.wait()
            compare(webView.title, "__all__")
        }

        function test_reject() {
            openItemSelector()
            tryCompare(webView, "selectorLoaded", true)
            compare(webView.title, "No new selection was made")
        }

        function test_selectFirstThenReject() {
            webView.initialSelection = 1
            webView.finalSelection = -1
            openItemSelector()
            tryCompare(webView, "selectorLoaded", true)
            compare(webView.title, "No new selection was made")
        }

        function test_selectWithSize() {
            webView.url = Qt.resolvedUrl("../common/selectwithsize.html")
            verify(webView.waitForLoadSucceeded())
            titleSpy.clear()

            test_selectFirstThenAcceptDirectly()
        }
    }
}