public void CanDrawPlayer2() { //Arrange var board = new Board(3); var testInputO = new PlayerInput((1, 1), (1, 3), (3, 2), (2, 3), (3, 1)); var playerO = new Human(testInputO, Symbol.Naught, "player o"); var computer = new ComputerNeverLose(Symbol.Cross, "computer", new BestMoveDecider(board)); var ticTacToe = new TicTacToe(board, playerO, computer, new NullInputOutput()); //Act ticTacToe.PlayGame(); //Assert Assert.Equal(GameStatus.Drew, ticTacToe.GameStatus); //Arrange // var board = new Board(3); //board.PlaceSymbolToCoordinates(Symbol.Naught, new Move(1,1)); //board.PlaceSymbolToCoordinates(Symbol.Cross, new Move(2,2)); // board.PlaceSymbolToCoordinates(Symbol.Naught, new Move(1,3)); // board.PlaceSymbolToCoordinates(Symbol.Cross, new Move(1,2)); // board.PlaceSymbolToCoordinates(Symbol.Naught, new Move(3,2)); //Act // var bestMove = new BestMoveDecider(board).NextMove(); //Assert // Assert.Equal(1, bestMove.XCoordinate); // Assert.Equal(1, bestMove.YCoordinate); }
public void MakeFirstMoveAsPlayer1() { //arrange var board = new Board(3); var bestMoveDecider = new BestMoveDecider(board); var computer = new ComputerNeverLose(Symbol.Cross, "computer", bestMoveDecider); //Act var move = computer.PlayTurn(); //Assert Assert.Equal(2, move.XCoordinate); Assert.Equal(2, move.YCoordinate); }