public void ItCanSayIfItAHasAWumpusInACavern() { var map = new Map(); Assert.IsFalse(map.HasWumpusIn(1)); map.PlaceItem(1, MapItems.Wumpus); Assert.IsTrue(map.HasWumpusIn(1)); }
public void ItAllowsAnotherItemWithTheWumpus() { var map = new Map(); map.PlaceItem(1, MapItems.Wumpus); map.PlaceItem(1, MapItems.Arrow); Assert.IsTrue(map.HasWumpusIn(1)); Assert.AreEqual(2, map.ItemsInCavern(1).Count); }
public void ItOnlyAllowsOneWumpus() { var map = new Map(); map.PlaceItem(1, MapItems.Wumpus); map.PlaceItem(2, MapItems.Wumpus); Assert.IsFalse(map.HasWumpusIn(1)); Assert.IsTrue(map.HasWumpusIn(2)); }
public void ItDoesntMistakeAnyMapItemForAWumpus() { var map = new Map(); map.PlaceItem(1, MapItems.Arrow); Assert.IsFalse(map.HasWumpusIn(1)); }
public void ItDoesntMistakeAnEmptyCaveForAWumpus() { var map = new Map(); map.AddPath(0, 1, Command.Directions.West); Assert.IsFalse(map.HasWumpusIn(0)); }
public void ItMovesTheWumpusEachTurnBasedOnWumpusMover() { var presenter = Substitute.For<Presenter>(); var map = new Map(); map.PlaceItem(2, MapItems.Wumpus); var mover = Substitute.For<WumpusMover>(); mover.Move(map).Returns(4); var game = new Game(presenter, map) { Mover = mover }; game.Command(new Command { Order = Command.Commands.Rest }); Assert.IsTrue(map.HasWumpusIn(4)); }
public void ItDoesntMoveTheWumpusIfTheWumpusIsntPlaced() { var presenter = Substitute.For<Presenter>(); var map = new Map(); var mover = Substitute.For<WumpusMover>(); mover.Move(map).Returns(4); var game = new Game(presenter, map) { Mover = mover }; game.Command(new Command { Order = Command.Commands.Rest }); Assert.IsFalse(map.HasWumpusIn(4)); }
public void ItDoesntMoveIfTheWumpusHasBeenKilled() { var presenter = Substitute.For<Presenter>(); var map = new Map(); var mover = Substitute.For<WumpusMover>(); mover.Move(map).Returns(5); var game = new Game(presenter, map) { Mover = mover }; KillWumpus(game, map); Assert.IsFalse(map.HasWumpusIn(5)); }