From 31ae462cb245a52589083db6efe97e3986c01d75 Mon Sep 17 00:00:00 2001 From: Jeroen Schweitzer Date: Wed, 25 Feb 2026 09:50:48 +0100 Subject: [PATCH] test(simulation): update protocol fixtures and golden for Sprint 18 Regenerated MsgPack fixtures for protocol v14 (examine_result and character_pressure fields). Updated golden test, serialization assertions, and cross-language fixture generator. Co-Authored-By: Claude Opus 4.6 --- .../msgpack/snapshot_boundary_tick_0.msgpack | Bin 343 -> 379 bytes .../msgpack/snapshot_boundary_tick_127.msgpack | Bin 343 -> 379 bytes .../snapshot_boundary_tick_2b31m1.msgpack | Bin 347 -> 383 bytes .../msgpack/snapshot_boundary_tick_2b32.msgpack | Bin 351 -> 387 bytes .../snapshot_boundary_tick_32767.msgpack | Bin 345 -> 381 bytes .../fixtures/msgpack/snapshot_empty.msgpack | Bin 343 -> 379 bytes .../msgpack/snapshot_multi_entity.msgpack | Bin 748 -> 784 bytes .../fixtures/msgpack/snapshot_one_npc.msgpack | Bin 441 -> 477 bytes .../fixtures/msgpack/snapshot_player.msgpack | Bin 444 -> 480 bytes .../fixtures/msgpack/snapshot_v2_full.msgpack | Bin 608 -> 644 bytes server/src/test_world/mod.rs | 1 + server/tests/bridge_ipc.rs | 2 ++ server/tests/bridge_tcp.rs | 2 ++ server/tests/gen_fixtures.rs | 4 ++++ server/tests/golden/proof_room_tick_10.json | 4 +++- server/tests/serialization.rs | 10 ++++++++-- 16 files changed, 20 insertions(+), 3 deletions(-) diff --git a/client/tests/fixtures/msgpack/snapshot_boundary_tick_0.msgpack b/client/tests/fixtures/msgpack/snapshot_boundary_tick_0.msgpack index 0a0876c58923e10f551abe3adce508c9bbc2abff..148ce3bcd558bbbf951cc30443441e6a809957b2 100644 GIT binary patch delta 58 zcmcc4^qYz29)rm8vecsD%=|pQjXd6rD(g}!5_2>2QsawKi%WA#4s1%!NGwWBE=etl NF8~S^mlmZS005?G7zY3V delta 21 ccmey(be)Ok9)r;GvecsD%=|pwjXd6r09+FXmH+?% diff --git a/client/tests/fixtures/msgpack/snapshot_boundary_tick_127.msgpack b/client/tests/fixtures/msgpack/snapshot_boundary_tick_127.msgpack index 6aafb8c2c49dc5c2a3cb38eeff5acaed48b2893e..53c6b67504295d83e92e02d3dd0005b0e6263592 100644 GIT binary patch delta 58 zcmcc4^qYz29)rm8vecsD%=|pQjXd6rD(g}!5_2>2QsawKi%WA#4s1%!NGwWBE=etl NF8~S^mlmZS005?G7zY3V delta 21 ccmey(be)Ok9)r;GvecsD%=|pwjXd6r09+FXmH+?% diff --git a/client/tests/fixtures/msgpack/snapshot_boundary_tick_2b31m1.msgpack b/client/tests/fixtures/msgpack/snapshot_boundary_tick_2b31m1.msgpack index 7d6d91200e308b87c8d5384a98ed51fd9544dda5..91f76e316921c6f2c06ace082708a12c04b63ab6 100644 GIT binary patch delta 58 zcmcc3^q-069)rm8vecsD%=|pQjXeI0D(g}!5_2>2QsawKi%WA#4s1%!NGwWBE=etl NF8~S^mlmZS005}X7!v>h delta 21 ccmey*beoCi9)r;GvecsD%=|pwjXeI009?BVq5uE@ diff --git a/client/tests/fixtures/msgpack/snapshot_boundary_tick_2b32.msgpack b/client/tests/fixtures/msgpack/snapshot_boundary_tick_2b32.msgpack index cd39ea41fe151544ea434d43dee0aa84f1453bd7..3c851d4c8e1cbb0880e5571a5efe514e084e2166 100644 GIT binary patch delta 58 zcmcc5)XdCtk3nR4S!z*nW_}*uMxJ0sm365ViMg41sqsar#icnV2R0>VBo-wmm!uZO N7XXEdON&wu0056@7oY$D delta 21 ccmZo>zR$#Sk3nd8S!z*nW_}*;MxJ0s08;k{F8}}l diff --git a/client/tests/fixtures/msgpack/snapshot_boundary_tick_32767.msgpack b/client/tests/fixtures/msgpack/snapshot_boundary_tick_32767.msgpack index a195fdf6b34198db586496e8a51314b105cd1b3d..304069bcb2e90efaa885cbc3123132cee31db23a 100644 GIT binary patch delta 58 zcmcb~^p}a}9)rm8vecsD%=|pQjXb`LD(g}!5_2>2QsawKi%WA#4s1%!NGwWBE=etl NF8~S^mlmZS005_(7!3db delta 21 ccmey%bd!na9)r;GvecsD%=|pwjXb`L092QsawKi%WA#4s1%!NGwWBE=etl NF8~S^mlmZS005?G7zY3V delta 21 ccmey(be)Ok9)r;GvecsD%=|pwjXd6r09+FXmH+?% diff --git a/client/tests/fixtures/msgpack/snapshot_multi_entity.msgpack b/client/tests/fixtures/msgpack/snapshot_multi_entity.msgpack index a332c6c50f3f2dec5a9cd542e565ba4b70111c32..7b28637f49e1b89fbdb8664041c0fb7331c49986 100644 GIT binary patch delta 58 zcmaFEI)RPn9)rm8vecsD%=|pQjXV#SRMw?dB<5!3rN$Sf7MJFf9N3hckywVBo-wmm!uZO N7XXEdON&wu005B(7pMRL delta 21 ccmZo+eZazVk3nd8S!z*nW_}*;MxGER08?%UHvj+t diff --git a/server/src/test_world/mod.rs b/server/src/test_world/mod.rs index aad81a8c9..363344845 100644 --- a/server/src/test_world/mod.rs +++ b/server/src/test_world/mod.rs @@ -183,6 +183,7 @@ pub fn setup_gauntlet(app: &mut App) { profile, profile.initial_stance(), PlayerMoveCooldown::default(), + crate::simulation::pressure::CharacterPressure::default(), )) .id(); registry.register(player); diff --git a/server/tests/bridge_ipc.rs b/server/tests/bridge_ipc.rs index 886224372..e6032404c 100644 --- a/server/tests/bridge_ipc.rs +++ b/server/tests/bridge_ipc.rs @@ -66,6 +66,8 @@ fn snapshot_roundtrip_over_unix_socket() { conversation_events: vec![], conversation_ended: vec![], follow_state: None, + examine_result: None, + character_pressure: None, rng_seed: None, }; diff --git a/server/tests/bridge_tcp.rs b/server/tests/bridge_tcp.rs index 0e949d56b..e823976e6 100644 --- a/server/tests/bridge_tcp.rs +++ b/server/tests/bridge_tcp.rs @@ -52,6 +52,8 @@ fn snapshot_roundtrip_over_tcp() { conversation_events: vec![], conversation_ended: vec![], follow_state: None, + examine_result: None, + character_pressure: None, rng_seed: None, }; diff --git a/server/tests/gen_fixtures.rs b/server/tests/gen_fixtures.rs index 86a7346a9..3816b0d01 100644 --- a/server/tests/gen_fixtures.rs +++ b/server/tests/gen_fixtures.rs @@ -41,6 +41,8 @@ fn fixture_snapshot(tick: u64, entities: Vec) -> ObserverSnapshot conversation_events: vec![], conversation_ended: vec![], follow_state: None, + examine_result: None, + character_pressure: None, rng_seed: None, } } @@ -227,6 +229,8 @@ fn generate_msgpack_fixtures() { conversation_events: vec![], conversation_ended: vec![], follow_state: None, + examine_result: None, + character_pressure: None, rng_seed: None, }; write_fixture( diff --git a/server/tests/golden/proof_room_tick_10.json b/server/tests/golden/proof_room_tick_10.json index 1f4f346c8..68037d998 100644 --- a/server/tests/golden/proof_room_tick_10.json +++ b/server/tests/golden/proof_room_tick_10.json @@ -2,6 +2,7 @@ "blocked_entities": [ 2 ], + "character_pressure": null, "conversation_ended": [], "conversation_events": [], "current_monologue": null, @@ -38,6 +39,7 @@ "z": 0 } ], + "examine_result": null, "follow_state": null, "game_time": { "day": 0, @@ -71,7 +73,7 @@ "scan_events": [], "sound_events": [], "tick": 8, - "version": 13, + "version": 14, "visible_tiles": [ { "tile_kind": "Wall", diff --git a/server/tests/serialization.rs b/server/tests/serialization.rs index 48af4ebdb..56151925f 100644 --- a/server/tests/serialization.rs +++ b/server/tests/serialization.rs @@ -30,6 +30,8 @@ fn test_snapshot(tick: u64, entities: Vec) -> ObserverSnapshot { conversation_events: vec![], conversation_ended: vec![], follow_state: None, + examine_result: None, + character_pressure: None, rng_seed: None, } } @@ -275,6 +277,8 @@ fn snapshot_v2_fields_roundtrip() { conversation_events: vec![], conversation_ended: vec![], follow_state: None, + examine_result: None, + character_pressure: None, rng_seed: None, }; @@ -330,7 +334,7 @@ fn protocol_version_constant_matches_snapshot() { let snapshot = test_snapshot(0, vec![]); assert_eq!(snapshot.version, PROTOCOL_VERSION); assert_eq!( - PROTOCOL_VERSION, 13, + PROTOCOL_VERSION, 14, "bump this assertion when protocol version changes" ); } @@ -374,6 +378,8 @@ fn all_facing_direction_variants_roundtrip() { conversation_events: vec![], conversation_ended: vec![], follow_state: None, + examine_result: None, + character_pressure: None, rng_seed: None, }; let bytes = rmp_serde::to_vec_named(&snapshot).expect("serialize"); @@ -1379,7 +1385,7 @@ fn serde_default_fields_fill_in_when_missing_from_wire() { // `tell_state`, `follow_state`, `rng_seed`, `zone_id`, `object_type`, etc. // are all `#[serde(default)]` — they must default to None/empty when absent. let minimal_json = serde_json::json!({ - "version": 13, + "version": 14, "tick": 42, "game_time": { "day": 0,