summaryrefslogtreecommitdiff
path: root/modules/gdscript/tests/scripts/parser/features/truthiness.gd
blob: 9c67a152f50694e6482c7ade38f8e6ef9516d10a (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
func test():
	# The assertions below should all evaluate to `true` for this test to pass.
	assert(true)
	assert(not false)
	assert(500)
	assert(not 0)
	assert(500.5)
	assert(not 0.0)
	assert("non-empty string")
	assert(["non-empty array"])
	assert({"non-empty": "dictionary"})
	assert(Vector2(1, 0))
	assert(Vector2i(-1, -1))
	assert(Vector3(0, 0, 0.0001))
	assert(Vector3i(0, 0, 10000))

	# Zero position is `true` only if the Rect2's size is non-zero.
	assert(Rect2(0, 0, 0, 1))

	# Zero size is `true` only if the position is non-zero.
	assert(Rect2(1, 1, 0, 0))

	# Zero position is `true` only if the Rect2's size is non-zero.
	assert(Rect2i(0, 0, 0, 1))

	# Zero size is `true` only if the position is non-zero.
	assert(Rect2i(1, 1, 0, 0))

	# A fully black color is only truthy if its alpha component is not equal to `1`.
	assert(Color(0, 0, 0, 0.5))