test / helpers / test_array_helper.gd

Attached Scenes

Note
No attached scenes.

Code

extends GutTest

class TestResource:
	var foo : int = 1
	func bar(): return 1


func test_sum_empty():
	assert_eq(ArrayHelper.sum([], 'foo'), 0)
	assert_eq(ArrayHelper.sum([], 'bar()'), 0)


func test_sum_null():
	assert_eq(ArrayHelper.sum([null], 'foo'), 0)
	assert_eq(ArrayHelper.sum([null], 'bar()'), 0)


func test_sum_attribute():
	var res1 = TestResource.new()
	var res2 = TestResource.new()
	assert_eq(ArrayHelper.sum([res1, res2], 'foo'), 2)
	assert_eq(ArrayHelper.sum([res1, null, res2], 'foo'), 2)


func test_sum_function():
	var res1 = TestResource.new()
	var res2 = TestResource.new()
	assert_eq(ArrayHelper.sum([res1, res2], 'bar()'), 2)
	assert_eq(ArrayHelper.sum([res1, null, res2], 'bar()'), 2)


func test_build():
	var arr = ArrayHelper.build(4)
	assert_eq(arr, [null, null, null, null])
	arr = ArrayHelper.build(5, false)
	assert_eq(arr, [false, false, false, false, false])


func test_diff():
	var arr_a = [1, '2', 3, false, null, true]
	var arr_b = ['1', true, null]
	assert_eq(ArrayHelper.diff(arr_a, arr_b), [1, '2', 3, false])
	assert_eq(ArrayHelper.diff(arr_b, arr_a), ['1'])