public void SwitchWhiteToBlackTurnsTest() { PenteController pc = new PenteController(9, 9, "Boris", "Kyle"); pc.isTesting = true; for (int row = 0; row < 9; row++) { for (int col = 0; col < 9; col++) { PenteCellectaCanvas canvas = new PenteCellectaCanvas(row, col, pc, 10, 10); } } pc.PlaceFirstPiece(); //black pc.AttemptPlacement(2, 4); //white pc.AttemptPlacement(4, 8); //black Assert.AreEqual(false, !pc.isWhitePlayersTurn, "Switching Turns Does Not Work"); }
public void GridPiecePlacementTest() { PenteController pc = new PenteController(19, 19, "Tester1", "Tester2"); pc.isTesting = true; for (int row = 0; row < 19; row++) { //start of first loo0p for (int col = 0; col < 19; col++) { //start of second loop PenteCellectaCanvas canvas = new PenteCellectaCanvas(row, col, pc, 20, 20); }//end of second loop }//end of first loop pc.PlaceFirstPiece(); pc.AttemptPlacement(4, 7); pc.AttemptPlacement(0, 8); Assert.AreEqual(true, pc.board[4, 7].IsWhitePlayer, "The Piece Was not Places"); Assert.AreEqual(true, !pc.board[0, 8].IsWhitePlayer, "Piece was not Placed"); }
public void CaptureTest_Horizantal() { PenteController.StartGame(PlayMode.MultiPlayer, true); //set up capture PenteController.TakeTurn(0, 1); PenteController.TakeTurn(0, 2); PenteController.TakeTurn(15, 15); PenteController.TakeTurn(0, 3); //Capture PenteController.TakeTurn(0, 4); var board = PenteController.game.Board; var actual = board[0, 2] == PieceColor.Empty && board[0, 3] == PieceColor.Empty; var expected = true; Assert.AreEqual(expected, actual); }
public void SecondPlayerMakes5thCapture_GameOver() { //Set up PenteController.StartGame(PlayMode.MultiPlayer, true); PenteController.game.SecondPlayerCaptures = 4; PenteController.game.SetPieceAt(0, 0, PieceColor.White); PenteController.game.SetPieceAt(0, 1, PieceColor.Black); PenteController.game.SetPieceAt(0, 2, PieceColor.Black); PenteController.game.IsFirstPlayersTurn = false; //Capture PenteController.TakeTurn(0, 3); bool expected = true; bool actual = PenteController.game.IsGameOver; Assert.AreEqual(expected, actual); }
public void FirstPieceCenter() { //Checking for Center piece of Grid size 9x9 PenteController pc = new PenteController(9, 9, "Tester1", "Tester2"); pc.isTesting = true; Assert.AreEqual(4, pc.boardCenter[0], $"X2 Not Middle Board Center is { pc.boardCenter[0]}"); Assert.AreEqual(4, pc.boardCenter[1], $"Y2 Not Middle Board Center is {pc.boardCenter[1]}"); //Checking for Center Piece of Grid Size 9x21 PenteController pcc = new PenteController(9, 21, "Tester1", "Tester2"); Assert.AreEqual(4, pcc.boardCenter[0], $"X2 Not Middle Board Center is {pcc.boardCenter[0]}"); Assert.AreEqual(10, pcc.boardCenter[1], $"Y2 Not Middle Board Center is {pcc.boardCenter[1]}"); //Checking to see if Black piece is first Assert.AreEqual(false, pcc.isWhitePlayersTurn, "Black Piece is Not First"); }
public void FivePiecesInARowEndGame() { PenteController.StartGame(PlayMode.MultiPlayer, isDebug: true); //first capture PenteController.TakeTurn(0, 0); //1 PenteController.TakeTurn(1, 0); PenteController.TakeTurn(0, 1); //1 PenteController.TakeTurn(1, 1); PenteController.TakeTurn(0, 2); //1 PenteController.TakeTurn(1, 2); PenteController.TakeTurn(0, 3); //1 PenteController.TakeTurn(1, 3); PenteController.TakeTurn(0, 4); //1 bool actual = PenteController.game.IsGameOver; bool expected = true; Assert.AreEqual(expected, actual); }
public void BlackSecondMoveOutOfBoundaryTest() { PenteController pc = new PenteController(9, 9, "Boris", "Kyle"); pc.isTesting = true; for (int row = 0; row < 9; row++) { for (int col = 0; col < 9; col++) { PenteCellectaCanvas canvas = new PenteCellectaCanvas(row, col, pc, 10, 10); } } pc.PlaceFirstPiece(); //black pc.AttemptPlacement(1, 4); //white pc.AttemptPlacement(4, 3); //black pc.AttemptPlacement(3, 4); //white Assert.AreEqual(null, !(pc.board[4, 3].IsWhitePlayer), "Black Cannot Place Piece In Boundary"); }
private void TakeTurnsWithPoints(PenteController game, Point[] whitePoints, Point[] blackPoints) { if (whitePoints.Length != blackPoints.Length) { throw new ArgumentException("You need to pass in two arrays of equal size"); } int TotalNumber = blackPoints.Length + whitePoints.Length; int whitePoint = 0; int blackPoint = 0; for (int i = 0; i < TotalNumber; i++) { if (i % 2 == 0) { game.TakeTurn(whitePoints[whitePoint++], PieceColor.White); } else { game.TakeTurn(blackPoints[blackPoint++], PieceColor.Black); } } }
public void CaptureDiagonalStoneTest() { PenteController pc = new PenteController(9, 9, "TESTER1", "TESTER2"); pc.isTesting = true; for (int row = 0; row < 9; row++) { for (int col = 0; col < 9; col++) { PenteCellectaCanvas canvas = new PenteCellectaCanvas(row, col, pc, 10, 10); } } pc.PlaceFirstPiece(); //black pc.AttemptPlacement(3, 3); //white pc.AttemptPlacement(0, 0); //black pc.AttemptPlacement(2, 2); //white pc.AttemptPlacement(1, 1); //black pc.checkCapture(3, 3, false); Assert.AreEqual(null, pc.board[2, 2].IsWhitePlayer, "Diagonal Capture Stones Does Not Work"); Assert.AreEqual(null, pc.board[3, 3].IsWhitePlayer, "Diagonal Capture Stones Does Not Work"); }
public void FiveCapturesEndGame() { PenteController.StartGame(PlayMode.MultiPlayer, isDebug: true); //first capture PenteController.TakeTurn(0, 0); //1 PenteController.TakeTurn(0, 1); PenteController.TakeTurn(1, 0); //1 PenteController.TakeTurn(0, 2); PenteController.TakeTurn(0, 3); //1 //second capture PenteController.TakeTurn(1, 1); PenteController.TakeTurn(2, 0); //1 PenteController.TakeTurn(1, 2); PenteController.TakeTurn(1, 3); //1 //third capture PenteController.TakeTurn(2, 1); PenteController.TakeTurn(3, 0); //1 PenteController.TakeTurn(2, 2); PenteController.TakeTurn(2, 3); //1 //fourth capture PenteController.TakeTurn(3, 1); PenteController.TakeTurn(4, 0); //1 PenteController.TakeTurn(3, 2); PenteController.TakeTurn(3, 3); //1 //fifth capture PenteController.TakeTurn(4, 1); PenteController.TakeTurn(5, 0); //1 PenteController.TakeTurn(4, 2); PenteController.TakeTurn(4, 3); //1 bool actual = PenteController.game.IsGameOver; bool expected = true; Assert.AreEqual(expected, actual); }