Save The Tree implementation and acceptance work in progress
Preserve production code, regression fixtures, audio assets and provenance, test infrastructure, and the original-completion plan and progress ledger. Final game and Windows acceptance remain pending; excluded local artifacts and native experiments are not part of this snapshot.
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
extends SceneTree
|
||||
const FixtureCleanup := preload("res://tests/helpers/ui_audio_fixture_cleanup.gd")
|
||||
|
||||
## Normal build/product controls exercise drafts, a real paid tick, queued Save,
|
||||
## normal load, duplicate prevention and removal-free disabled restart state.
|
||||
@@ -102,10 +103,22 @@ func run() -> void:
|
||||
push_error("AUTO_PURCHASE_UI needs a fresh user://tests slot; player fallback forbidden")
|
||||
quit(90); return
|
||||
await setup_scene(slot)
|
||||
if panel == null: quit(failures); return
|
||||
if panel == null:
|
||||
var _audio_cleanup_early_0: Dictionary = await FixtureCleanup.free_owner_and_wait(self, main)
|
||||
if not bool(_audio_cleanup_early_0.get(&"passed", false)):
|
||||
push_error("Ordinary fixture audio cleanup failed: %s" % str(_audio_cleanup_early_0))
|
||||
quit(96)
|
||||
return
|
||||
quit(failures); return
|
||||
expect(panel.auto_purchase_button.disabled, "no warehouse is a safe empty setting state")
|
||||
build_warehouse()
|
||||
if warehouse.is_empty(): quit(failures); return
|
||||
if warehouse.is_empty():
|
||||
var _audio_cleanup_early_1: Dictionary = await FixtureCleanup.free_owner_and_wait(self, main)
|
||||
if not bool(_audio_cleanup_early_1.get(&"passed", false)):
|
||||
push_error("Ordinary fixture audio cleanup failed: %s" % str(_audio_cleanup_early_1))
|
||||
quit(96)
|
||||
return
|
||||
quit(failures); return
|
||||
queue_intent()
|
||||
save_button()
|
||||
expect(SaveService.load_snapshot(slot)[&"ok"], "pending actual command is written to isolated disk")
|
||||
@@ -132,7 +145,11 @@ func run() -> void:
|
||||
expect(not panel.auto_purchase_enabled.button_pressed and stock() == 6, "normal load preserves disabled intent and paid stock")
|
||||
await capture("normal-auto-purchase")
|
||||
SaveService.delete_save(slot)
|
||||
main.queue_free()
|
||||
var _audio_cleanup_final: Dictionary = await FixtureCleanup.free_owner_and_wait(self, main)
|
||||
if not bool(_audio_cleanup_final.get(&"passed", false)):
|
||||
push_error("Ordinary fixture audio cleanup failed: %s" % str(_audio_cleanup_final))
|
||||
quit(96)
|
||||
return
|
||||
await process_frame
|
||||
print("SUPPLY_AUTO_PURCHASE_UI checks=%d failures=%d" % [checks, failures])
|
||||
quit(failures)
|
||||
|
||||
Reference in New Issue
Block a user