feat(io): MapView model (CellState, RoomCell, Connection, MapView)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-31 20:58:58 +02:00
parent 42dbcd9696
commit e10ff2cf99
5 changed files with 40 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
package thb.jeanluc.adventure.io.text;
import org.junit.jupiter.api.Test;
import java.util.List;
import static org.assertj.core.api.Assertions.assertThat;
class MapViewTest {
@Test
void mapViewIsImmutableAndHoldsCellsAndConnections() {
RoomCell a = new RoomCell("kitchen", "Kitchen", 0, 0, CellState.CURRENT);
RoomCell b = new RoomCell("hallway", "Hallway", 0, -1, CellState.VISITED);
MapView v = new MapView(List.of(a, b), List.of(new Connection(a, b)));
assertThat(v.cells()).hasSize(2);
assertThat(v.connections()).hasSize(1);
assertThat(v.connections().getFirst().from().id()).isEqualTo("kitchen");
}
}