aboutsummaryrefslogtreecommitdiffstats
path: root/tests/tst_qPrefDisplay.qml
blob: 80107a7fbf57f79c1f03c14511dd292acd466813 (plain) (blame)
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
// SPDX-License-Identifier: GPL-2.0
import QtQuick 2.6
import QtTest 1.2

TestCase {
	name: "qPrefDisplay"

	function test_variables() {
		var x1 = PrefDisplay.animation_speed
		PrefDisplay.animation_speed = 37
		compare(PrefDisplay.animation_speed, 37)

		// PrefDisplay.divelist_font is NOT permitted in QML
		// calling qApp->setFont in the setter crashes in Qt5.11
		// due to a conflict with the QML font system
//		var x2 = PrefDisplay.divelist_font
//		PrefDisplay.divelist_font = "helvitica"
//		compare(PrefDisplay.divelist_font, "helvitica")

		// PrefDisplay.font_size is NOT permitted in QML
		// calling qApp->setFont in the setter crashes in Qt5.11
		// due to a conflict with the QML font system
//		var x3 = PrefDisplay.font_size
//		PrefDisplay.font_size = 12.0
//		compare(PrefDisplay.font_size, 12.0)

		var x4 = PrefDisplay.PrefDisplay_invalid_dives
		PrefDisplay.PrefDisplay_invalid_dives = !x4
		compare(PrefDisplay.PrefDisplay_invalid_dives, !x4)

		var x5 = PrefDisplay.show_developer
		PrefDisplay.show_developer = !x5
		compare(PrefDisplay.show_developer, !x5)

		var x6 = PrefDisplay.theme
		PrefDisplay.theme = "myColor"
		compare(PrefDisplay.theme, "myColor")

//TBD		var x7 = PrefDisplay.tooltip_position
//TBD		PrefDisplay.tooltip_position = ??
//TBD		compare(PrefDisplay.tooltip_position, ??)

		var x8 = PrefDisplay.lastDir
		PrefDisplay.lastDir = "myDir"
		compare(PrefDisplay.lastDir, "myDir")

		var x9 = PrefDisplay.UserSurvey
		PrefDisplay.UserSurvey = "yes"
		compare(PrefDisplay.UserSurvey, "yes")

//TBD		var x10 = PrefDisplay.mainSplitter
//TBD		PrefDisplay.mainSplitter =  ???
//TBD		compare(PrefDisplay.mainSplitter, ???)

//TBD		var x11 = PrefDisplay.topSplitter
//TBD		PrefDisplay.topSplitter =  ???
//TBD		compare(PrefDisplay.topSplitter, ???)

//TBD		var x12 = PrefDisplay.bottomSplitter
//TBD		PrefDisplay.bottomSplitter =  ???
//TBD		compare(PrefDisplay.bottomSplitter, ???)

		var x13 = PrefDisplay.maximized
		PrefDisplay.maximized = true
		compare(PrefDisplay.maximized, true)

//TBD		var x14 = PrefDisplay.geometry
//TBD		PrefDisplay.geometry =  ???
//TBD		compare(PrefDisplay.geometry, ???)

//TBD		var x15 = PrefDisplay.windowState
//TBD		PrefDisplay.windowState =  ???
//TBD		compare(PrefDisplay.windowState, ???)

		var x16 = PrefDisplay.lastState
		PrefDisplay.lastState = 17
		compare(PrefDisplay.lastState, 17)
	}

	Item {
		id: spyCatcher

		property bool spy1 : false
		// no signals 2,3
		property bool spy4 : false
		property bool spy5 : false
		property bool spy6 : false
		// no signals 7	
		property bool spy8 : false
		property bool spy9 : false
		// no signals 10,11,12
		property bool spy13 : false
		// no signals 14,15
		property bool spy16 : false

		Connections {
			target: PrefDisplay
			onAnimation_speedChanged: {spyCatcher.spy1 = true }
			onDisplay_invalid_divesChanged: {spyCatcher.spy4 = true }
			onShow_developerChanged: {spyCatcher.spy5 = true }
			onThemeChanged: {spyCatcher.spy6 = true }
			onLastDirChanged: {spyCatcher.spy8 = true }
			onUserSurveyChanged: {spyCatcher.spy9 = true }
			onMaximizedChanged: {spyCatcher.spy13 = true }
			onLastStateChanged: {spyCatcher.spy16 = true }
		}
	}

	function test_signals() {
		PrefDisplay.animation_speed = -1157
		// 2,3 have no signal
		PrefDisplay.display_invalid_dives = ! PrefDisplay.display_invalid_dives
		PrefDisplay.show_developer = ! PrefDisplay.show_developer
		PrefDisplay.theme = "qml"
		// 7 has no signal
		PrefDisplay.lastDir = "qml"
		PrefDisplay.userSurvey = "qml"
		// 10, 11, 12 have no signal
		PrefDisplay.maximized = ! PrefDisplay.maximized
		// 14,15 have no signal
		PrefDisplay.lastState = -17

		compare(spyCatcher.spy1, true)
		compare(spyCatcher.spy4, true)
		compare(spyCatcher.spy5, true)
		compare(spyCatcher.spy6, true)
		compare(spyCatcher.spy8, true)
		compare(spyCatcher.spy9, true)
		compare(spyCatcher.spy13, true)
		compare(spyCatcher.spy16, true)
	}
}