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")
|
||||
var checks:=0
|
||||
var failures:=0
|
||||
var runtime: Variant
|
||||
@@ -33,7 +34,13 @@ func run()->void:
|
||||
if facility.definition_id==&"cleaning_room":room=facility
|
||||
if facility.definition_id==&"reception":reception=facility
|
||||
expect(room!=null and reception!=null,"normal UI builds both completed facilities")
|
||||
if room==null or reception==null:main.queue_free();await process_frame;quit(failures);return
|
||||
if room==null or reception==null:
|
||||
var early_room_cleanup: Dictionary = await FixtureCleanup.free_owner_and_wait(self, main)
|
||||
if not bool(early_room_cleanup.get(&"passed", false)):
|
||||
push_error("Cleaning ordinary owner cleanup failed: %s" % str(early_room_cleanup))
|
||||
quit(97)
|
||||
return
|
||||
quit(failures);return
|
||||
var preview: WorldPreview=main.world_preview
|
||||
var room_id:=room.instance_id
|
||||
var id:=reception.instance_id
|
||||
@@ -64,7 +71,13 @@ func run()->void:
|
||||
expect(runtime.facility_cleanliness.get_facility(id)["current"]==75,"25 completed defined visits reach cleaning threshold")
|
||||
var task:=active_job(id)
|
||||
expect(task!=null,"threshold schedules an actual staff task")
|
||||
if task==null:main.queue_free();await process_frame;quit(failures);return
|
||||
if task==null:
|
||||
var early_task_cleanup: Dictionary = await FixtureCleanup.free_owner_and_wait(self, main)
|
||||
if not bool(early_task_cleanup.get(&"passed", false)):
|
||||
push_error("Cleaning ordinary owner cleanup failed: %s" % str(early_task_cleanup))
|
||||
quit(97)
|
||||
return
|
||||
quit(failures);return
|
||||
var task_id:=task.task_id
|
||||
var walking_seen:=false
|
||||
for minute in 80:
|
||||
@@ -125,5 +138,9 @@ func run()->void:
|
||||
root.size=Vector2i(1280,720)
|
||||
await process_frame;await process_frame;await RenderingServer.frame_post_draw
|
||||
expect(root.get_texture().get_image().save_png(ProjectSettings.globalize_path("res://artifacts/cleanliness-runtime-2026-09-29/cleaning-gameplay.png"))==OK,"capture actual cleaning UI")
|
||||
main.queue_free();await process_frame
|
||||
var cleanup: Dictionary = await FixtureCleanup.free_owner_and_wait(self, main)
|
||||
if not bool(cleanup.get(&"passed", false)):
|
||||
push_error("Cleaning ordinary owner cleanup failed: %s" % str(cleanup))
|
||||
quit(97)
|
||||
return
|
||||
print("Cleaning gameplay: %d checks, %d failures"%[checks,failures]);quit(failures)
|
||||
|
||||
Reference in New Issue
Block a user