Пример #1
0
        public void Whether_Bishop_CantMoveToIncorrectSquare_On_CanMoveTo()
        {
            var board  = new Board();
            var bishop = new Bishop(new Square(4, 4), board, PieceColor.White);

            Assert.That(bishop.CanMoveTo(new Square(6, 5)), Is.False);
        }
Пример #2
0
        public void Whether_Bishop_CantJumpOverAnotherPiece_On_CanMoveTo(PieceColor pieceColor)
        {
            var board  = new Board();
            var bishop = new Bishop(new Square(4, 4), board, PieceColor.White);
            var knight = new Knight(new Square(5, 5), board, pieceColor);

            Assert.That(bishop.CanMoveTo(new Square(6, 6)), Is.False);
        }
Пример #3
0
        public void Whether_Bishop_CantMoveOutsideTheBoard_On_CanMoveTo()
        {
            var board  = new Board();
            var bishop = new Bishop(new Square(1, 1), board, PieceColor.White);

            Assert.That(bishop.PossibleMoves().Count() == 7);
            Assert.That(bishop.CanMoveTo(new Square(-1, -1)), Is.False);
        }
Пример #4
0
        public void Whether_Bishop_CantMoveToOccupiedSquare_On_CanMoveTo()
        {
            var board         = new Board();
            var bishop        = new Bishop(new Square(4, 4), board, PieceColor.White);
            var anotherKnight = new Knight(new Square(6, 6), board, PieceColor.White);

            Assert.That(bishop.CanMoveTo(new Square(6, 6)), Is.False);
        }
Пример #5
0
        public void Whether_Bishop_CanMoveToPossibleSquare_On_CanMoveTo(int offsetX, int offsetY)
        {
            var board  = new Board();
            var bishop = new Bishop(new Square(4, 4), board, PieceColor.White);

            Assert.That(bishop.CanMoveTo(
                            new Square(bishop.Position.XPosition + offsetX,
                                       bishop.Position.YPosition + offsetY)));
        }
Пример #6
0
        public void CanMoveTo_should_return_false_when_target_square_is_not_valid()
        {
            // Arrange
            const string currentSquare = "f1";
            const string targetSquare  = "d8";
            ChessmenBase bishop        = new Bishop(Color.Black, currentSquare);

            // Act
            var result = bishop.CanMoveTo(targetSquare);

            // Assert
            Assert.That(result, Is.False);
        }
Пример #7
0
        public void TestBishopMove()
        {
            Board board = new Board();

            Bishop bishop = new Bishop(new Point(4, 4), Team.White);
            Pawn   friend = new Pawn(new Point(3, 3), Team.White);
            Pawn   enemy1 = new Pawn(new Point(5, 3), Team.Black);

            board.AddPiece(bishop);
            board.AddPiece(friend);
            board.AddPiece(enemy1);

            Assert.True(bishop.CanMoveTo(new Point(3, 5), board));
            Assert.True(bishop.CanMoveTo(new Point(5, 5), board));
            Assert.False(bishop.CanMoveTo(new Point(3, 3), board));
            Assert.True(bishop.CanMoveTo(new Point(5, 3), board));
            Assert.False(bishop.CanMoveTo(new Point(1, 1), board));
            Assert.False(bishop.CanMoveTo(new Point(6, 2), board));
        }