extends BessereTestsTest # CORE var core: Core # Used during testing var callback: String = "" var core_test: Core # Unload framework after each test func after_each() -> void: callback = "" core_test = null await unload_framework() # Framework management func load_framework(config: CoreConfiguration = CoreConfiguration.new()) -> Core: core = Core.new(config) get_tree().root.add_child(core) await get_tree().process_frame await core.complete_init() return core func unload_framework() -> void: if is_framework_loaded(): await core.cleanup() get_tree().root.remove_child.call_deferred(core) core = null await get_tree().process_frame func is_framework_loaded() -> bool: return get_node_or_null("/root/CORE") != null # Helper functions func wait_process_time() -> void: await get_tree().create_timer(0.1).timeout