public void ConnectFour_SimpleAI_Test() { connect4 = new ConnectFour.ConnectFour(true); TurnResult result; for (int i = 0; i < 5; i++) { result = connect4.PlayTurn(i % 2); Assert.IsTrue(result == TurnResult.Next); } var column = ((SimpleAI)connect4.CurrentPlayer).ChooseColumn(connect4); Assert.IsTrue(column == 0); result = connect4.PlayTurn(column); Assert.IsTrue(result == TurnResult.Next); for (int i = 0; i < 5; i++) { result = connect4.PlayTurn(i % 2 + 2); Assert.IsTrue(result == TurnResult.Next); } column = ((SimpleAI)connect4.CurrentPlayer).ChooseColumn(connect4); Assert.IsTrue(column == 2); }
public void ConnectFour_SimpleAI_Diagonal_Test() { connect4 = new ConnectFour.ConnectFour(true); TurnResult result; var columns = new int[] { 0, 1, 1, 2, 2, 3, 3, 0, 2, 3, 0 }; for (int i = 0; i < columns.Length; i++) { result = connect4.PlayTurn(columns[i]); Assert.IsTrue(result == TurnResult.Next); } var column = ((SimpleAI)connect4.CurrentPlayer).ChooseColumn(connect4); Assert.IsTrue(column == 3); result = connect4.PlayTurn(column); Assert.IsTrue(result == TurnResult.Next); }
public void TestInitialize() { connect4 = new ConnectFour.ConnectFour(false); }
public MCTS(ConnectFour board, long timeallotted) { this.width = board.width; this.timeallotted = timeallotted; root = new Node(null, board); }