extends SceneTree const Controller = preload("res://p9_10/runtime_controller.gd") const Fixture = preload("res://tests/p9_10/runtime_fixture.gd") var failures: Array[String] = [] func _initialize() -> void: call_deferred("run_test") func run_test() -> void: root.size = Vector2i(844, 390) var experience = Controller.new() experience.persistence_enabled = false experience.battle_auto_advance = false experience.size = Vector2(844, 390) experience.configure_entry(Fixture.p99_market_four()) root.add_child(experience) for _index in 6: await process_frame expect(experience.market != null and experience.market.state.current_market == 4, "exact P9.9 Market 4 enters P9.10") expect(experience.find_child("P910MarketTitle", true, false) != null, "P9.10 Market world renders") experience.queue_free() for _index in 45: await process_frame if failures.is_empty(): print("ABG_P9_10_RUNTIME_CONTROLLER_COMPILE_OK entry=p99_market4 controller=exclusive market_world=true") quit(0) else: for failure in failures: push_error(failure) quit(1) func expect(condition: bool, message: String) -> void: if not condition: failures.append("P9.10 runtime compile: %s" % message)