test: establish WP4-07 visual performance red harness
Dada P0-A isolated Windows CI / validate-and-package (push) Failing after 4m19s
Dada P0-A isolated Windows CI / validate-and-package (push) Failing after 4m19s
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
import assert from "node:assert/strict";
|
||||
import test from "node:test";
|
||||
|
||||
import {
|
||||
WP4_07_PERFORMANCE_BUDGETS,
|
||||
WP4_07_RED_RESOURCE_VERSION,
|
||||
WP4_07_VISUAL_THRESHOLDS,
|
||||
assertWp407Fixture,
|
||||
createWp407CanvasFixture,
|
||||
} from "./wp4-07-fixture.mjs";
|
||||
|
||||
test("FX-CANVAS-50 stays fixed at the normative composition and export size", () => {
|
||||
const contract = assertWp407Fixture();
|
||||
assert.deepEqual(contract.counts, {
|
||||
color_card: 4,
|
||||
dynamic_sticker: 10,
|
||||
static_sticker: 24,
|
||||
text_template: 12,
|
||||
});
|
||||
assert.match(contract.fixture_sha256, /^[0-9A-F]{64}$/);
|
||||
});
|
||||
|
||||
test("visual and performance thresholds cannot be weakened by the harness", () => {
|
||||
assert.deepEqual(WP4_07_VISUAL_THRESHOLDS, {
|
||||
boundary_delta_px_max: 2,
|
||||
channel_delta_significant: 16,
|
||||
significant_pixel_ratio_max: 0.01,
|
||||
});
|
||||
assert.deepEqual(WP4_07_PERFORMANCE_BUDGETS, {
|
||||
autosave_serialization_p95_ms_max: 50,
|
||||
canvas_frame_p95_ms_max: 33,
|
||||
continuous_unresponsive_ms_max_exclusive: 500,
|
||||
editor_reopen_ms_max: 3_000,
|
||||
export_1080x1920_ms_max: 10_000,
|
||||
export_peak_additional_bytes_max: 1_073_741_824,
|
||||
interaction_duration_ms: 10_000,
|
||||
long_task_ms_max: 200,
|
||||
measured_runs: 5,
|
||||
pointer_to_frame_p95_ms_max: 50,
|
||||
warmup_runs: 1,
|
||||
});
|
||||
});
|
||||
|
||||
test("the Red contract resource version is structurally barred from Green", () => {
|
||||
const canvas = createWp407CanvasFixture();
|
||||
assert.equal(new Set(canvas.elements.map((element) => element.resource_version)).size, 1);
|
||||
assert.equal(canvas.elements[0].resource_version, WP4_07_RED_RESOURCE_VERSION);
|
||||
assert.match(WP4_07_RED_RESOURCE_VERSION, /red-contract/);
|
||||
});
|
||||
Reference in New Issue
Block a user