mirror of
https://github.com/storytold/lightcraft.git
synced 2026-10-30 13:07:43 -06:00
Tests: the snapshot-determinism test asserts both runs settled before comparing pixels
snapshot() ignored settle()'s result, so on a loaded machine (seen on the FreeBSD VM and under local load) a timed-out settle compared half-rendered frames and failed as a misleading pixel diff. The test now settles explicitly with a 300 s budget, asserts it settled, then paints. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
07a7316d8b
commit
1130e99095
@@ -286,7 +286,10 @@ mod tests {
|
||||
let mut h = demo([900.0, 600.0]);
|
||||
let r = h.request("ui.set", json!({"view": "detail"}), Duration::from_secs(10));
|
||||
assert_eq!(r["ok"], true, "{r}");
|
||||
h.snapshot(SETTLE)
|
||||
// Compare only fully settled frames: a timed-out settle would compare half-rendered
|
||||
// pictures and fail as a misleading pixel diff (seen on loaded CI machines).
|
||||
assert!(h.settle(Duration::from_secs(300)), "the demo detail view did not settle within 300 s");
|
||||
h.paint()
|
||||
};
|
||||
let (a, b) = (shot(), shot());
|
||||
assert_eq!(a.size, b.size);
|
||||
|
||||
Reference in New Issue
Block a user