Test layers on one engine and share selection and shader helpers

Layer display tests no longer re-check Cesium primitives in every layer:
they run on the fake engine, and one Cesium translation check per ground
kind lives in the Cesium engine's ground tests. Their harnesses are shared,
and the fake-engine, Cesium-engine and flights tests that repeated the
contract suite are gone, 340 tests in all.

The press-travel measurement is shared by the selection dispatcher and
CCTV, which loses its ScreenSpaceEventHandler shim and world-click module.
ALPR, installations and bikeshare share one selection keeper and selected
marker write. Layers with their own click rules keep their handlers.

Navara's pulse is a class like the ground pass, the ground and imagery
passes share the surface uniforms, and the colour, log-depth and occlusion
GLSL lives in one chunk module, each caller keeping its depth bias. The
ground suite runs inside the contract suite (--only=ground:), and fixture
and script names say what they test.

Behaviour is unchanged on both engines.
This commit is contained in:
German Khokhlov committed 2026-11-08 17:06:10 +04:00
1 parent 7f478e3815
commit b4556f9763
101 files changed
+1095 -4071

No files matched your search

+14 -4
View File
@@ -1086,15 +1086,25 @@ check({
heavy: true, run: harness({ id: 'D1', script: 'track-regression.mjs', args: ['--url', APP_URL], timeoutMs: 1200000 }),
});
check({
id: 'D2', group: 'D', desc: 'qa-heading-b3 — path-derived display heading',
heavy: true, run: harness({ id: 'D2', script: 'qa-heading-b3.mjs', args: ['--url', APP_URL], timeoutMs: 900000 }),
id: 'D2',
group: 'D',
desc: 'qa-aircraft-heading — path-derived display heading',
heavy: true,
run: harness({
id: 'D2',
script: 'qa-aircraft-heading.mjs',
args: ['--url', APP_URL],
timeoutMs: 900000,
}),
});
check({
id: 'D3', group: 'D', desc: 'qa-sprites-b5 — per-class billboard silhouettes',
id: 'D3',
group: 'D',
desc: 'qa-aircraft-sprites — per-class billboard silhouettes',
heavy: true,
run: harness({
id: 'D3',
script: 'qa-sprites-b5.mjs',
script: 'qa-aircraft-sprites.mjs',
args: ['--url', APP_URL],
timeoutMs: 900000,
knownConditions: [{