aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/quick/qquickxmllistmodel/data/get.qml
blob: 509da7174b814583b2f55e955ce275a141da2303 (plain)
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
import QtQuick 2.0
import QtQuick.XmlListModel 2.0

XmlListModel {
    source: "model.xml"
    query: "/Pets/Pet"
    XmlRole { name: "name"; query: "name/string()" }
    XmlRole { name: "type"; query: "type/string()" }
    XmlRole { name: "age"; query: "age/number()" }
    XmlRole { name: "size"; query: "size/string()" }

    id: root

    property bool preTest: false
    property bool postTest: false

    function runPreTest() {
        if (root.get(0) != undefined)
            return;

        preTest = true;
    }

    function runPostTest() {
        if (root.get(-1) != undefined)
            return;

        var row = root.get(0);
        if (row.name != "Polly" ||
            row.type != "Parrot" ||
            row.age != 12 ||
            row.size != "Small")
            return;

        row = root.get(1);
        if (row.name != "Penny" ||
            row.type != "Turtle" ||
            row.age != 4 ||
            row.size != "Small")
            return;

        row = root.get(7);
        if (row.name != "Rover" ||
            row.type != "Dog" ||
            row.age != 0 ||
            row.size != "Large")
            return;

        row = root.get(8);
        if (row.name != "Tiny" ||
            row.type != "Elephant" ||
            row.age != 15 ||
            row.size != "Large")
            return;

        if (root.get(9) != undefined)
            return;

        postTest = true;
    }
}