Пример #1
0
        public async Task <GetChessPiecePossibleMovesResponse> GetAvailableMoves(
            int currentX, int currentY, ChessPieceKind chessPieceKind)
        {
            var request = new GetChessPiecePossibleMovesRequest(
                new ChessboardPositionDto(currentX, currentY), chessPieceKind);

            return(await mediator.Send(request));
        }
        public ChessboardState TestPieceMoveValidation(ChessPieceKind chessPieceKind, ChessboardState initialState)
        {
            var currentPosition = initialState.GetCurrentPosition();
            var request         = new GetChessPiecePossibleMovesRequest(currentPosition, chessPieceKind);
            var result          = HandleRequest(request);

            Assert.That(result.CurrentPosition, Is.EqualTo(currentPosition));
            return(ChessboardState.CreateFromMoves(result.CurrentPosition, result.PossibleMoves));
        }
        private static GetChessPiecePossibleMovesResponse HandleRequest(GetChessPiecePossibleMovesRequest request)
        {
            var handler = CreateHandler();

            return(handler.Handle(request, CancellationToken.None).Result);
        }