# GdUnit generated TestSuite #warning-ignore-all:unused_argument #warning-ignore-all:return_value_discarded class_name GdUnitTestSuiteBuilderTest extends GdUnitTestSuite const GdUnitTools := preload("res://addons/gdUnit4/src/core/GdUnitTools.gd") # TestSuite generated from const __source = 'res://addons/gdUnit4/src/core/GdUnitTestSuiteBuilder.gd' var _example_source_gd :String func before_test(): var temp := create_temp_dir("examples") var result := GdUnitFileAccess.copy_file("res://addons/gdUnit4/test/core/resources/sources/test_person.gd", temp) assert_result(result).is_success() _example_source_gd = result.value() as String func after_test(): clean_temp_dir() func assert_tests(test_suite :Script) -> GdUnitArrayAssert: # needs to be reload to get fresh method list test_suite.reload() var methods := test_suite.get_script_method_list() var test_cases := Array() for method in methods: if method.name.begins_with("test_"): test_cases.append(method.name) return assert_array(test_cases) func test_create_gd_success() -> void: var source := load(_example_source_gd) # create initial test suite based checked function selected by line 9 var result := GdUnitTestSuiteBuilder.create(source, 9) assert_result(result).is_success() var info := result.value() as Dictionary assert_str(info.get("path")).is_equal("user://tmp/test/examples/test_person_test.gd") assert_int(info.get("line")).is_equal(11) assert_tests(load(info.get("path"))).contains_exactly(["test_first_name"]) # create additional test checked existing suite based checked function selected by line 15 result = GdUnitTestSuiteBuilder.create(source, 15) assert_result(result).is_success() info = result.value() as Dictionary assert_str(info.get("path")).is_equal("user://tmp/test/examples/test_person_test.gd") assert_int(info.get("line")).is_equal(16) assert_tests(load(info.get("path"))).contains_exactly_in_any_order(["test_first_name", "test_fully_name"]) func test_create_gd_fail() -> void: var source := load(_example_source_gd) # attempt to create an initial test suite based checked the function selected in line 8, which has no function definition var result := GdUnitTestSuiteBuilder.create(source, 8) assert_result(result).is_error().contains_message("No function found at line: 8.")