public void ReturnsResultOfWinningCheckWhenTakingTurn()
        {
            MockBoard mockBoard = new MockBoard(5, true);
            Player    player    = new Player("Sam", mockBoard, new MockDice());

            Assert.True(player.TakeTurn(MockConsole.Empty()));
        }
        public void ChecksIfTheyHaveWonAfterTheirTurnUsingTheirFinalPosition()
        {
            MockBoard mockBoard = new MockBoard(5);
            Player    player    = new Player("Sam", mockBoard, new MockDice());

            player.TakeTurn(MockConsole.Empty());

            mockBoard.AssertWinCheckedForPosition(5);
        }
        public void PassesDiceRollIntoBoard()
        {
            MockBoard mockBoard = new MockBoard(5);
            Player    player    = new Player("Manoj", mockBoard, new MockDice(3));

            player.TakeTurn(MockConsole.Empty());

            mockBoard.AssertNewPositionCalculatedWithDiceRoll(3);
        }
        public void ItUsesTheBoardToCalculateItsNewPosition()
        {
            MockBoard mockBoard = new MockBoard();
            Player    player    = new Player("Manoj", mockBoard, new MockDice());

            player.TakeTurn(MockConsole.Empty());

            mockBoard.AssertNewPositionCalculatedWithPreviousPosition(1);
        }
        public void PassesCurrentPositionIntoBoard()
        {
            MockBoard mockBoard = new MockBoard(5);
            Player    player    = new Player("Manoj", mockBoard, new MockDice());

            player.TakeTurn(MockConsole.Empty());
            player.TakeTurn(MockConsole.Empty());

            mockBoard.AssertNewPositionCalculatedWithPreviousPosition(5);
        }