public void PlacePawn_Correctly_Updates_Position() { Assert.IsTrue(chessBoard.Cells[6, 2].IsEmpty); Position position = new Position(6, 2); IChessPiecePawn pawn = chessBoard.PlacePawn(position, PieceColor.Black); Assert.IsFalse(chessBoard.Cells[6, 2].IsEmpty); Assert.AreEqual(position, pawn.CurrentPosition); }
public void SetUp() { chessBoard = new ChessBoard(new EastSide(), new ChessPieceCreationFactory()); blackPawn1 = chessBoard.PlacePawn(new Position(6, 3), PieceColor.Black); blackPawn2 = chessBoard.PlacePawn(new Position(6, 4), PieceColor.Black); whitePawn1 = chessBoard.PlacePawn(new Position(1, 3), PieceColor.White); whitePawn2 = chessBoard.PlacePawn(new Position(1, 4), PieceColor.White); }
public void PlacePawn_Limits_The_Number_Of_Pawns() { for (int i = 0; i < 10; i++) { int row = i / ChessBoard.MaxBoardWidth; Position position = new Position(6 + row, i % ChessBoard.MaxBoardWidth); if (row < 1) { IChessPiecePawn pawn = chessBoard.PlacePawn(position, PieceColor.Black); Assert.AreEqual(position, pawn.CurrentPosition); } else { Assert.Throws <InvalidOperationException>(() => chessBoard.PlacePawn(position, PieceColor.Black)); } } }