mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-14 15:22:21 +00:00
Measure engine coupling, QA harness use and contract coverage
Counters that may only fall, each with a committed baseline and a test that fails on growth: - report-engine-coupling.mjs gains layer modules that take the viewer in attachRenderer (33), layer folders with their own "view being restored" flag (9), engine.surface calls outside src/globe (41) and layer ids named in the engine switch (3). - report-qa-harness.mjs counts QA scripts that launch Chrome themselves (98), wait with fixed sleeps (117), take the hidden loading screen as readiness (9), read Cesium-only objects (75) or define their own waitFor helpers (19). - withCallLog records every contract member the contract suite calls on the fake engine; contractCoverage.test.mjs fails when a member outside contract-uncalled-baseline.json goes uncalled, and when a listed one is called now, so the list of 12 only shrinks.
This commit is contained in:
1 parent
ba04ceaa32
commit
9c2a2d6951
11 files changed
+842
-3
No files matched your search
@@ -604,6 +604,18 @@ checks. Test ownership and repeated destruction as well as visible output.
|
||||
The browser harness is `scripts/qa-contract-suite.mjs`; use
|
||||
`--only=ground:,imagery:` for ground and imagery pixel checks.
|
||||
|
||||
Three reports keep migration debt from growing: `scripts/report-engine-coupling.mjs`
|
||||
counts application coupling, `scripts/report-qa-harness.mjs` counts browser QA
|
||||
duplication, and `src/globe/testing/contractCoverage.test.mjs` reports contract
|
||||
members the fake-engine suite leaves uncalled. After removing coupling or moving
|
||||
QA work to `scripts/qa-strict-harness.mjs` helpers, run the matching report with
|
||||
`--write-baseline` and keep only decreases in its baseline. After adding behavioral
|
||||
contract checks, remove the newly exercised names from
|
||||
`src/globe/testing/contract-uncalled-baseline.json`; keep it sorted, and remove
|
||||
members that no longer exist too. Run the matching tests with
|
||||
`node --import=./build/registerVue.js --test` followed by their paths; the numeric
|
||||
baselines reject growth, and the contract baseline also rejects stale entries.
|
||||
|
||||
The application currently registers two kinds: adding another still requires
|
||||
registration in `ENGINE_KINDS`, scene construction/choice and the corresponding
|
||||
QA harnesses. `assertGlobeEngine` currently validates that registration. The
|
||||
|
||||
Reference in new issue
Block a user