init
This commit is contained in:
commit
e45f121fb9
89 changed files with 336069 additions and 0 deletions
33
test/README
Normal file
33
test/README
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
Tests for the brogue-genesis generator.
|
||||
|
||||
Running
|
||||
-------
|
||||
make test # goldens + 1000-seed invariant stress
|
||||
make stress # 5000-seed invariant stress only
|
||||
|
||||
Files
|
||||
-----
|
||||
run_tests.sh Runs goldens against current binary, then stress.
|
||||
update_goldens.sh Regenerates goldens.txt. Run this only after an
|
||||
intentional change to generation logic.
|
||||
goldens.txt seed|map_sha256|summary_line, one per committed seed.
|
||||
|
||||
What's checked
|
||||
--------------
|
||||
1. Map hash stability — sha256 of the ASCII map for each committed seed.
|
||||
2. Summary line stability — room/loop/lake/bridge counts and connectivity.
|
||||
3. Connectivity invariant — for a rolling sweep of seeds, every passable
|
||||
cell must be 4-connected to every other. This is the load-bearing
|
||||
property of Brogue's pipeline.
|
||||
|
||||
When to update the goldens
|
||||
--------------------------
|
||||
If you intentionally change generation (new room type, tweak CA rule, change
|
||||
lake sizes, adjust corridor bounds, reorder phases, etc.), the goldens will
|
||||
break by design. Inspect the diff, confirm it looks right, then:
|
||||
|
||||
make && test/update_goldens.sh
|
||||
make test
|
||||
|
||||
If the stress pass ever reports non-zero failures, a connectivity-preserving
|
||||
invariant has been broken — investigate before committing.
|
||||
Loading…
Add table
Add a link
Reference in a new issue