aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/codemodel/check/equality-checks.qml
blob: 1e815e7148de77409a69b27c67c59532865f7cf6 (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
62
63
64
65
66
67
68
69
70
71
import QtQuick 1.0

Rectangle {
    function foo(k) {
        // k is a unknown value
        var s = ""
        var n = 0
        var N = null
        var u = undefined
        var b = true
        var o = {}

        if (s == s) {} // -1 15 16 # false positive
        if (s == n) {} // 126 15 16
        if (s == N) {} // -2 15 16 # wrong warning (always false)
        if (s == u) {} // -2 15 16 # wrong warning (always false)
        if (s == b) {} // 126 15 16
        if (s == o) {} // 126 15 16
        if (s == k) {} // 126 15 16

        if (n == s) {} // 126 15 16
        if (n == n) {} // -1 15 16 # false positive
        if (n == N) {} // -2 15 16 # wrong warning (always false)
        if (n == u) {} // -2 15 16 # wrong warning (always false)
        if (n == b) {} // 126 15 16
        if (n == o) {} // 126 15 16
        if (n == k) {} // 126 15 16

        if (N == s) {} // -2 15 16 # wrong warning (always false)
        if (N == n) {} // -2 15 16 # wrong warning (always false)
        if (N == N) {} // -1 15 16 # false positive
        if (N == u) {} // -2 15 16 # wrong warning (always true)

        if (N == b) {} // -2 15 16 # wrong warning (always false)
        if (N == o) {} // -2 15 16 # wrong warning (always false)
        if (N == k) {} // 126 15 16

        if (u == s) {} // -2 15 16 # wrong warning (always false)
        if (u == n) {} // -2 15 16 # wrong warning (always false)
        if (u == N) {} // -2 15 16 # wrong warning (always true)
        if (u == u) {} // -2 15 16 # wrong warning (always true)
        if (u == b) {} // -2 15 16 # wrong warning (always false)
        if (u == o) {} // -2 15 16 # wrong warning (always false)
        if (u == k) {} // 126 15 16

        if (b == s) {} // 126 15 16
        if (b == n) {} // 126 15 16

        if (b == N) {} // -2 15 16 # wrong warning (always false)
        if (b == u) {} // -2 15 16 # wrong warning (always false)
        if (b == b) {} // -1 15 16 # false positive
        if (b == o) {} // 126 15 16
        if (b == k) {} // 126 15 16

        if (o == s) {} // 126 15 16
        if (o == n) {} // 126 15 16
        if (o == N) {} // -2 15 16 # wrong warning (always false)
        if (o == u) {} // -2 15 16 # wrong warning (always false)
        if (o == b) {} // 126 15 16
        if (o == o) {} // -1 15 16 # false positive
        if (o == k) {} // 126 15 16

        if (k == s) {} // 126 15 16
        if (k == n) {} // 126 15 16
        if (k == N) {} // 126 15 16
        if (k == u) {} // 126 15 16
        if (k == b) {} // 126 15 16
        if (k == o) {} // 126 15 16
        if (k == k) {} // 126 15 16
    }
}