aboutsummaryrefslogtreecommitdiff
path: root/internal/game/cmd_room_remove_test.go
diff options
context:
space:
mode:
authorhistoria <[not public]>2026-07-09 05:27:10 -0400
committerhistoria <[not public]>2026-07-09 05:27:10 -0400
commitc705ae942573984784ef501bf8198f61f5206ddd (patch)
treec964066f3a244002bf75cb50a877630f46496f81 /internal/game/cmd_room_remove_test.go
parent74153c7814fc4cef988066ef04e38731a943bc12 (diff)
downloadthehouseoficarus-c705ae942573984784ef501bf8198f61f5206ddd.tar.gz
refactor: simplify yaml, remove support for old scalar fields
Diffstat (limited to 'internal/game/cmd_room_remove_test.go')
-rw-r--r--internal/game/cmd_room_remove_test.go62
1 files changed, 31 insertions, 31 deletions
diff --git a/internal/game/cmd_room_remove_test.go b/internal/game/cmd_room_remove_test.go
index 1868c30..a13af8a 100644
--- a/internal/game/cmd_room_remove_test.go
+++ b/internal/game/cmd_room_remove_test.go
@@ -85,9 +85,9 @@ func reloadRoom(t *testing.T, g *Game, id int) *world.Room {
func TestRoomRemoveSuccessPull(t *testing.T) {
dir := t.TempDir()
- writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: 2\n")
- writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: 3\n west: 1\n")
- writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n west: 2\n")
+ writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: {room: 2}\n")
+ writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: {room: 3}\n west: {room: 1}\n")
+ writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n west: {room: 2}\n")
g := newRemoveGame(t, dir)
sess := newRemoveSession(&player.Player{Name: "tester", RoomID: 1})
@@ -113,9 +113,9 @@ func TestRoomRemoveSuccessPull(t *testing.T) {
func TestRoomRemoveDiagonalPull(t *testing.T) {
dir := t.TempDir()
- writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n northeast: 2\n")
- writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n northeast: 3\n southwest: 1\n")
- writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n southwest: 2\n")
+ writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n northeast: {room: 2}\n")
+ writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n northeast: {room: 3}\n southwest: {room: 1}\n")
+ writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n southwest: {room: 2}\n")
g := newRemoveGame(t, dir)
sess := newRemoveSession(&player.Player{Name: "tester", RoomID: 1})
@@ -145,9 +145,9 @@ func TestRoomRemoveNoExit(t *testing.T) {
func TestRoomRemoveNotInsertChain(t *testing.T) {
dir := t.TempDir()
// B does not lead back to A via west.
- writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: 2\n")
- writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: 3\n")
- writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n west: 2\n")
+ writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: {room: 2}\n")
+ writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: {room: 3}\n")
+ writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n west: {room: 2}\n")
g := newRemoveGame(t, dir)
sess := newRemoveSession(&player.Player{Name: "tester", RoomID: 1})
@@ -162,8 +162,8 @@ func TestRoomRemoveNotInsertChain(t *testing.T) {
func TestRoomRemoveDeadEndFarRoom(t *testing.T) {
dir := t.TempDir()
// B leads back to A but has no forward east exit.
- writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: 2\n")
- writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n west: 1\n")
+ writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: {room: 2}\n")
+ writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n west: {room: 1}\n")
g := newRemoveGame(t, dir)
sess := newRemoveSession(&player.Player{Name: "tester", RoomID: 1})
@@ -177,10 +177,10 @@ func TestRoomRemoveDeadEndFarRoom(t *testing.T) {
func TestRoomRemoveOtherExitsInB(t *testing.T) {
dir := t.TempDir()
// B has east (fwd), west (back), AND up (extra).
- writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: 2\n")
- writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: 3\n west: 1\n up: 4\n")
- writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n west: 2\n")
- writeRemoveRoomFile(t, dir, 4, "name: D\nexits:\n down: 2\n")
+ writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: {room: 2}\n")
+ writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: {room: 3}\n west: {room: 1}\n up: {room: 4}\n")
+ writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n west: {room: 2}\n")
+ writeRemoveRoomFile(t, dir, 4, "name: D\nexits:\n down: {room: 2}\n")
g := newRemoveGame(t, dir)
sess := newRemoveSession(&player.Player{Name: "tester", RoomID: 1})
@@ -194,8 +194,8 @@ func TestRoomRemoveOtherExitsInB(t *testing.T) {
func TestRoomRemoveFarReciprocityBroken(t *testing.T) {
dir := t.TempDir()
// C's west does not point back to B.
- writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: 2\n")
- writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: 3\n west: 1\n")
+ writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: {room: 2}\n")
+ writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: {room: 3}\n west: {room: 1}\n")
writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n")
g := newRemoveGame(t, dir)
sess := newRemoveSession(&player.Player{Name: "tester", RoomID: 1})
@@ -210,10 +210,10 @@ func TestRoomRemoveFarReciprocityBroken(t *testing.T) {
func TestRoomRemoveExtraInboundEdge(t *testing.T) {
dir := t.TempDir()
// A clean chain A-east->B-east->C, but an unrelated room 5 also points to B.
- writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: 2\n")
- writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: 3\n west: 1\n")
- writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n west: 2\n")
- writeRemoveRoomFile(t, dir, 5, "name: E\nexits:\n north: 2\n")
+ writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: {room: 2}\n")
+ writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: {room: 3}\n west: {room: 1}\n")
+ writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n west: {room: 2}\n")
+ writeRemoveRoomFile(t, dir, 5, "name: E\nexits:\n north: {room: 2}\n")
g := newRemoveGame(t, dir)
sess := newRemoveSession(&player.Player{Name: "tester", RoomID: 1})
@@ -228,12 +228,12 @@ func TestRoomRemoveExtraInboundEdge(t *testing.T) {
// pulls room 6 onto room 5's cell, which must be rejected.
func TestRoomRemoveOverlap(t *testing.T) {
dir := t.TempDir()
- writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: 2\n south: 4\n")
- writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: 3\n west: 1\n")
- writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n south: 6\n west: 2\n")
- writeRemoveRoomFile(t, dir, 4, "name: D\nexits:\n east: 5\n north: 1\n")
- writeRemoveRoomFile(t, dir, 5, "name: E\nexits:\n west: 4\n")
- writeRemoveRoomFile(t, dir, 6, "name: F\nexits:\n north: 3\n")
+ writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: {room: 2}\n south: {room: 4}\n")
+ writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: {room: 3}\n west: {room: 1}\n")
+ writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n south: {room: 6}\n west: {room: 2}\n")
+ writeRemoveRoomFile(t, dir, 4, "name: D\nexits:\n east: {room: 5}\n north: {room: 1}\n")
+ writeRemoveRoomFile(t, dir, 5, "name: E\nexits:\n west: {room: 4}\n")
+ writeRemoveRoomFile(t, dir, 6, "name: F\nexits:\n north: {room: 3}\n")
g := newRemoveGame(t, dir)
sess := newRemoveSession(&player.Player{Name: "tester", RoomID: 1})
@@ -275,7 +275,7 @@ exits:
blocked_message: "A rock blocks the way."
hidden: true
`)
- writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: 3\n west: 1\n")
+ writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: {room: 3}\n west: {room: 1}\n")
writeRemoveRoomFile(t, dir, 3, `name: C
exits:
west:
@@ -310,9 +310,9 @@ exits:
// moved to A and notified. The caller stays in A.
func TestRoomRemoveRelocatesPlayersInB(t *testing.T) {
dir := t.TempDir()
- writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: 2\n")
- writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: 3\n west: 1\n")
- writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n west: 2\n")
+ writeRemoveRoomFile(t, dir, 1, "name: A\nexits:\n east: {room: 2}\n")
+ writeRemoveRoomFile(t, dir, 2, "name: B\nexits:\n east: {room: 3}\n west: {room: 1}\n")
+ writeRemoveRoomFile(t, dir, 3, "name: C\nexits:\n west: {room: 2}\n")
g := newRemoveGame(t, dir)
caller := newRemoveSession(&player.Player{Name: "builder", RoomID: 1})