コード例 #1
0
ファイル: KnightTests.cs プロジェクト: AGRocks/chezzles
        public void Whether_Knight_CantMoveToIncorrectSquare_On_CanMoveTo()
        {
            var board = new Board();
            var knight = new Knight(new Square(4, 4), board, PieceColor.White);

            Assert.That(knight.CanMoveTo(new Square(5, 5)), Is.False);
        }
コード例 #2
0
ファイル: QueenTests.cs プロジェクト: AGRocks/chezzles
        public void Whether_Queen_CantMoveToOccupiedSquare_On_CanMoveTo()
        {
            var board = new Board();
            var queen = new Queen(new Square(4, 4), board, PieceColor.White);
            var anotherKnight = new Knight(new Square(6, 6), board, PieceColor.White);

            Assert.That(queen.CanMoveTo(new Square(6, 6)), Is.False);
        }
コード例 #3
0
ファイル: QueenTests.cs プロジェクト: AGRocks/chezzles
        public void Whether_Queen_CantJumpOverAnotherPiece_On_CanMoveTo(PieceColor pieceColor)
        {
            var board = new Board();
            var queen = new Queen(new Square(4, 4), board, PieceColor.White);
            var knight = new Knight(new Square(5, 5), board, pieceColor);

            Assert.That(queen.CanMoveTo(new Square(6, 6)), Is.False);
        }
コード例 #4
0
ファイル: QueenTests.cs プロジェクト: AGRocks/chezzles
        public void Whether_Queen_CanGrabOpponentsPiece_On_CanMoveTo()
        {
            var board = new Board();
            var queen = new Queen(new Square(4, 4), board, PieceColor.White);
            var knight = new Knight(new Square(5, 5), board, PieceColor.Black);

            Assert.That(queen.CanMoveTo(new Square(5, 5)), Is.True);
        }
コード例 #5
0
ファイル: RookTests.cs プロジェクト: AGRocks/chezzles
        public void Whether_Rook_CantMoveToOccupiedSquare_On_CanMoveTo()
        {
            var board = new Board();
            var rook = new Rook(new Square(1, 1), board, PieceColor.White);
            var anotherKnight = new Knight(new Square(1, 6), board, PieceColor.White);

            Assert.That(rook.CanMoveTo(new Square(1, 6)), Is.False);
        }
コード例 #6
0
ファイル: RookTests.cs プロジェクト: AGRocks/chezzles
        public void Whether_Rook_CantJumpOverAnotherPiece_On_CanMoveTo(PieceColor pieceColor)
        {
            var board = new Board();
            var rook = new Rook(new Square(4, 4), board, PieceColor.White);
            var knight = new Knight(new Square(4, 5), board, pieceColor);

            Assert.That(rook.CanMoveTo(new Square(4, 6)), Is.False);
        }
コード例 #7
0
ファイル: KnightTests.cs プロジェクト: AGRocks/chezzles
        public void Whether_Knight_CantMoveOutsideTheBoard_On_CanMoveTo()
        {
            var board = new Board();
            var knight = new Knight(new Square(1, 1), board, PieceColor.White);

            Assert.That(knight.PossibleMoves().Count() == 2);
            Assert.That(knight.CanMoveTo(new Square(-1, 2)), Is.False);
        }
コード例 #8
0
ファイル: BishopTests.cs プロジェクト: AGRocks/chezzles
        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);
        }
コード例 #9
0
ファイル: KnightTests.cs プロジェクト: AGRocks/chezzles
        public void Whehter_Knight_CanMoveToPossibleSquare_On_CanMoveTo(int offsetX, int offsetY)
        {
            var board = new Board();
            var knight = new Knight(new Square(5, 4), board, PieceColor.White);

            Assert.That(knight.CanMoveTo(
                new Square(knight.Position.XPosition + offsetX,
                           knight.Position.YPosition + offsetY)));
        }
コード例 #10
0
ファイル: KnightTests.cs プロジェクト: AGRocks/chezzles
        public void Whether_Knight_ReturnsCorrectPossibleSquares_On_PossibleMoves()
        {
            var board = new Board();
            var knight = new Knight(new Square(4, 4), board, PieceColor.White);

            var possibleMoves = knight.PossibleMoves();

            Assert.That(possibleMoves != null);
            Assert.That(possibleMoves.Count() == 8);
        }
コード例 #11
0
ファイル: KingTests.cs プロジェクト: AGRocks/chezzles
        public void Whether_King_CantMoveToOccupiedSquare_On_CanMoveTo()
        {
            var board = new Board();
            var king = new King(new Square(4, 4), board, PieceColor.White);
            var anotherKnight = new Knight(new Square(5, 5), board, PieceColor.White);

            Assert.That(king.CanMoveTo(new Square(5, 5)), Is.False);
        }