aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qml/qmlcppcodegen/data/equalityQObjects.qml
blob: 199f80884fc4428db89d3530ed7ec6219b68c0ff (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
pragma Strict
import QtQml
import TestTypes

QtObject {
    id: self

    property QtObject nullObject
    property QtObject nonNullObject: QtObject {}
    property QtObject sameNonNullObject: nonNullObject
    property QtObject derivedObject: Person {name: "patron"}

    property bool derivedIsNotNull: derivedObject !== null
    property bool nullObjectIsNull: nullObject === null
    property bool nonNullObjectIsNotNull: null !== nonNullObject
    property bool compareSameObjects: sameNonNullObject === nonNullObject
    property bool compareDifferentObjects: derivedObject !== nonNullObject
    property bool compareObjectWithNullObject: nullObject !== nonNullObject

    // Above tests should hold true for the weak comparisons
    property bool nonStrict_derivedIsNotNull: derivedObject != null
    property bool nonStrict_nullObjectIsNull: nullObject == null
    property bool nonStrict_nonNullObjectIsNotNull: null != nonNullObject
    property bool nonStrict_compareSameObjects: sameNonNullObject == nonNullObject
    property bool nonStrict_compareDifferentObjects: derivedObject != nonNullObject
    property bool nonStrict_compareObjectWithNullObject: nullObject != nonNullObject
}