Speicherstand mit Prüfsumme und Prüfung beim Laden
Snapshots tragen jetzt eine Prüfsumme (Format 2). Beim Wiederherstellen werden Zustände abgelehnt, die die Regeln nie erzeugen: zu große Takte, mehr als vier Spieler online, doppelte Schlüssel, unmögliche Wartezeiten. World::load ersetzt den öffentlichen Aufruf von set_all_offline. Die festgeschriebenen Werte sind bewusst angepasst und um einen Offline-Spieler und das Kartenformat ergänzt. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -176,14 +176,6 @@ fn the_world_remembers_a_limited_number_of_players() {
|
||||
assert_eq!(world.players().len(), MAX_KNOWN_PLAYERS);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn set_all_offline_marks_every_player_offline() {
|
||||
let mut world = World::new(1);
|
||||
world.step(&[join(1), join(2)]);
|
||||
world.set_all_offline();
|
||||
assert!(world.players().iter().all(|player| !player.online));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn three_hits_break_soft_rock_and_give_one_stone() {
|
||||
let (mut world, id, rock) = world_with_player();
|
||||
|
||||
Reference in New Issue
Block a user