public void ExpectNextFlowStateAfterStealExecuted() { var turn = new Mock<IGameTurn>(); var board = CreateBoard(); var state = new RobberStealState(turn.Object, board); turn.Verify(t => t.NextFlowState(), Times.Never); //verify not called yet state.AfterExecute(GameCommand.StealResource); turn.Verify(t => t.NextFlowState()); }
public void ExpectNextFlowStateIfRobberIsOnTileWithoutPlayers() { var turn = new Mock<IGameTurn>(); var board = new Mock<IBoard>(); var robber = new Mock<IRobber>(); board.Setup(b => b.Robber).Returns(robber.Object); board.Setup(b => b.GetPlayers(It.IsAny<ITile>())).Returns(new IPlayer[0]); var state = new RobberStealState(turn.Object, board.Object); turn.Verify(t => t.NextFlowState()); }
public void ExpectNextFlowStateIfOnlyPlayerIsCurrentTurnPlayer() { var player = new Mock<IPlayer>(); var turn = new Mock<IGameTurn>(); turn.Setup(t => t.Player).Returns(player.Object); var board = new Mock<IBoard>(); var robber = new Mock<IRobber>(); board.Setup(b => b.Robber).Returns(robber.Object); board.Setup(b => b.GetPlayers(It.IsAny<ITile>())).Returns(new IPlayer[1] { player.Object }); var state = new RobberStealState(turn.Object, board.Object); turn.Verify(t => t.NextFlowState()); }
public void ExpectNothingToHappenIfNoStealCommand(GameCommand command) { var turn = new Mock<IGameTurn>(); var board = CreateBoard(); var state = new RobberStealState(turn.Object, board); state.AfterExecute(command); turn.Verify(t => t.NextFlowState(), Times.Never); }