Beispiel #1
0
        public void TestCanPromoteByMovingAndByCapturing()
        {
            var gameBoard = new GameBoard("r6k/1P6/8/8/8/8/8/7K w - - 0 1", PerformInternalBoardValidation);

            AssertBaseProperties(
                gameBoard,
                GameSide.White,
                CastlingOptions.None,
                null,
                0,
                1,
                GameState.Default);

            var kingMoves = new GameMove[] { "h1-g1", "h1-g2", "h1-h2" };

            var expectedValidMoves = kingMoves
                                     .Concat(new GameMove("b7", "b8").MakeAllPromotions())
                                     .Concat(new GameMove("b7", "a8").MakeAllPromotions())
                                     .ToArray();

            AssertValidMoves(gameBoard, expectedValidMoves);
        }