public void StartNewGame_AiParameterOutOfRange_ThrowsException() { // Arrange var ticTacToe = new Tictactoe(GetBoardButtons()); // Act ticTacToe.StartNewGame(false, false, 0); ticTacToe.StartNewGame(false, false, 1); ticTacToe.StartNewGame(false, false, 2); ticTacToe.StartNewGame(false, false, 3); ticTacToe.StartNewGame(false, false, -1); // Assert Assert.Fail("No exception was thrown."); }
public void PlaceMarker_ButtonParameterIsNull_ThrowsException() { // Arrange var ticTacToe = new Tictactoe(GetBoardButtons()); ticTacToe.StartNewGame(true, false, 0); // Act ticTacToe.PlaceMarker(null); // Assert Assert.Fail("No exception was thrown."); }
public void IsBoardFieldEmpty2_ValidUse_Success() { // Arrange var ticTacToe = new Tictactoe(GetBoardButtons()); ticTacToe.StartNewGame(true, false, 0); // Act ticTacToe.PlaceMarker(1, 0); bool fieldShouldBeEmpty = ticTacToe.IsBoardFieldEmpty(0, 0); bool fieldShouldNotBeEmpty = ticTacToe.IsBoardFieldEmpty(1, 0); // Assert Assert.AreEqual(true, fieldShouldBeEmpty); Assert.AreEqual(false, fieldShouldNotBeEmpty); }
public void PlaceMarker_ValidUse_Success() { // Arrange var ticTacToe = new Tictactoe(GetBoardButtons()); ticTacToe.StartNewGame(true, false, 0); var buttonForCrossMarkPlacement = GetBoardButtons().First(x => x.Tag.ToString() == "00"); var buttonForCircleMarkPlacement = GetBoardButtons().First(x => x.Tag.ToString() == "01"); // Act ticTacToe.PlaceMarker(buttonForCrossMarkPlacement); ticTacToe.NextTurn(); ticTacToe.PlaceMarker(buttonForCircleMarkPlacement); var buttonWithCrossMark = buttonForCrossMarkPlacement.Content.ToString(); var buttonWithCircleMark = buttonForCircleMarkPlacement.Content.ToString(); // Assert Assert.AreEqual(Resources.BoardCrossMark, buttonWithCrossMark); Assert.AreEqual(Resources.BoardCircleMark, buttonWithCircleMark); }
public void ResetBoard_ValidUse_Success() { // Arrange var ticTacToe = new Tictactoe(GetBoardButtons()); ticTacToe.StartNewGame(true, false, 0); // Act // ResetBoard method call is in the Tictactoe() ctor // Assert for (int i = 0; i < Tictactoe.GetBoardHorizontalSize(); i++) { for (int j = 0; j < Tictactoe.GetBoardVerticalSize(); j++) { bool isBoardFieldReset = ticTacToe.IsBoardFieldEmpty(i, j); Assert.AreEqual(true, isBoardFieldReset); } } }
public void NextTurn_ValidUse_Success() { // Arrange var ticTacToe = new Tictactoe(GetBoardButtons()); ticTacToe.StartNewGame(true, false, 0); // Act bool shouldBeTrue = ticTacToe.Turn; ticTacToe.NextTurn(); bool shouldBeFalse = ticTacToe.Turn; ticTacToe.NextTurn(); bool shouldBeTrueAgain = ticTacToe.Turn; // Assert Assert.AreEqual(true, shouldBeTrue); Assert.AreEqual(false, shouldBeFalse); Assert.AreEqual(true, shouldBeTrueAgain); }
public void GetCurrentTurnPlayerMark_ValidUse_Success() { // Arrange var ticTacToe = new Tictactoe(GetBoardButtons()); ticTacToe.StartNewGame(true, false, 0); // Act string shouldBeCrossMark = ticTacToe.GetCurrentTurnPlayerMark(); ticTacToe.NextTurn(); string shouldBeCircleMark = ticTacToe.GetCurrentTurnPlayerMark(); ticTacToe.NextTurn(); string shouldBeCrossMarkAgain = ticTacToe.GetCurrentTurnPlayerMark(); // Assert Assert.AreEqual(Resources.BoardCrossMark, shouldBeCrossMark); Assert.AreEqual(Resources.BoardCircleMark, shouldBeCircleMark); Assert.AreEqual(Resources.BoardCrossMark, shouldBeCrossMarkAgain); }