private void SetRoomHallwayAdjacency(Dungeon dungeon, IRoom adjacentRoom, IRoom currentRoom) { if (adjacentRoom == null) { return; } var hallway = _iHallwayFactory.CreateWithRooms(currentRoom, adjacentRoom); dungeon.AddHallway(hallway); currentRoom.AddAdjacentHallway(hallway); adjacentRoom.AddAdjacentHallway(hallway); }
public void ItCanCreateAHallwayWithRooms() { var roomA = new Room(); var roomB = new Room(); var hallway = _hallwayFactory.CreateWithRooms(roomA, roomB); Assert.IsAssignableFrom <IHallway>(hallway); Assert.IsAssignableFrom <IMonster>(hallway.Monster); Assert.IsAssignableFrom <IRoom>(hallway.RoomA); Assert.IsAssignableFrom <IRoom>(hallway.RoomB); Assert.Equal(roomA, hallway.RoomA); Assert.Equal(roomB, hallway.RoomB); }