3 Commits

Author SHA1 Message Date
bryanthaboi d920f7acdb clean up 2026-09-22 17:05:12 -04:00
Shane McGovern 3cf9e23178 test: fold the harness and parity-seam fixes into one gate-hardening commit
Ships the CI fix together with the test-harness work that supports it, so
every tier stays honest on every machine.

scripts/test.sh
- T6 records missing-artifact failures as skips when no imported game3 data
  exists at all (empty CI identity, no data/generated): the data-driven
  top-level suites assert instead of self-skipping on a fresh runner.  The
  skipped suite names are printed with that reason; with data present the
  same failure gates exactly as before.
- The T3 content verdict now weighs the exit code and the FAIL-line allowlist
  together.  The exit code used to be discarded, so a mid-run crash
  (unresolvable require under POKEPORT_DATA_DIR) printed green checks, zero
  FAIL lines, and passed.  A non-zero exit with no FAIL line is reported as a
  crash with the error line captured - a crash is not a pass.

Test-suite fixes, each run green (several twice)
- tests/run_tests.lua: restore per-suite leaked state and add the Data seam,
  so one suite's loaded data cannot leak into the next.
- tests/mod_runtime_tests.lua: save and restore the environment around each
  case.
- tests/parity_ss_anne_rooms.lua: _loadModule raw-order fix (30/30).
- tests/parity_ss_anne_departure.lua: the Data seams plus the playMap stub.
- playMap stubs for parity_rival_walkoff, parity_tower_rival,
  parity_silph_rival_bug2241 and parity_ss_anne_guard.
- Class-B seams in mod_registry_tests, mod_catalog_tests, mod_ui_tests,
  parity_ball_shake_anim, parity_wavy_screen, parity_hidden_coins_bcd_bug1810,
  parity_mart_stock and parity_rocket3_sight_bug1814.

Together these close the 57 failing checks that were on the content tier
(allowlist stays at 0), so a content run on a machine with imports ends
ALL TESTS PASSED.
2026-09-22 19:17:22 +01:00
bryanthaboi 36188ef18a work in progress 2026-07-21 05:50:40 -04:00