private static List <string> CalculatePossibleMoves(string boardString, Color color, GameSettings settings) { var board = BoardPosition.FromString(boardString); return(PossibleMoveCalculator.ForNewTurn(board, color, settings) .Calculate() .Select(m => m.ToString()) .ToList()); }
public void OnlyCaptureFromRestrictedFieldWhenChaining() { // |_|.|_|.| // |.|_|5|_| // |_|4|_|4| // |.|_|5|_| var board = BoardPosition.FromString("00054405"); var posisbleMoves = PossibleMoveCalculator.ForChainCaptures(board, new SquareId(5), InternationalSettings(4)) .Calculate() .Select(m => m.ToString()) .ToList(); posisbleMoves.Should().BeEquivalentTo("5x2"); }