chore: add GUT test framework
This commit is contained in:
38
addons/gut/test/unit/test_parameter_factory.gd
Normal file
38
addons/gut/test/unit/test_parameter_factory.gd
Normal file
@@ -0,0 +1,38 @@
|
||||
extends GutTest
|
||||
|
||||
class TestNamedParameters:
|
||||
extends GutTest
|
||||
|
||||
func test_creates_array_of_dictionaries():
|
||||
var got = ParameterFactory.named_parameters(['a', 'b'], [[1, 2], [3, 4]])
|
||||
assert_typeof(got[0], TYPE_DICTIONARY)
|
||||
|
||||
# spot check values.
|
||||
func test_gets_what_you_expect_back():
|
||||
var names = ['a', 'b', 'c']
|
||||
var vals = [[1, 2, 3], ['one', 'two', 'three'], [4, 'five', 6]]
|
||||
var got = ParameterFactory.named_parameters(names, vals)
|
||||
assert_eq(got[0].a, 1, '0.a')
|
||||
assert_eq(got[1]['c'], 'three', '1.c')
|
||||
assert_eq(got[2].b, 'five', '2.b')
|
||||
assert_eq(got[2]['a'], 4, '2.a')
|
||||
|
||||
func test_when_less_names_than_values_values_are_ignored():
|
||||
var names = ['a', 'b']
|
||||
var vals = [[1, 2, 3], [4, 5, 6]]
|
||||
var got = ParameterFactory.named_parameters(names, vals)
|
||||
assert_eq(got[0].size(), 2)
|
||||
|
||||
func test_when_less_values_then_nulls_are_filled_in():
|
||||
var names = ['a', 'b','c']
|
||||
var vals = [[1, 2], [3, 4]]
|
||||
var got = ParameterFactory.named_parameters(names, vals)
|
||||
assert_eq(got[0].size(), 3, 'size')
|
||||
assert_null(got[0]['c'], 'c is null')
|
||||
|
||||
func test_fills_in_gaps_when_param_is_not_array():
|
||||
var names = ['a', 'b','c']
|
||||
var vals = [[1, 2], 'a', [3, 4]]
|
||||
var got = ParameterFactory.named_parameters(names, vals)
|
||||
assert_eq(got[1].size(), 3, 'size')
|
||||
assert_null(got[1].b, 'b is null')
|
||||
Reference in New Issue
Block a user