Exemplo n.º 1
0
        public static void TestCastling(string fen, BoardExceptionType expectedException, string message = "")
        {
            var board  = FenReader.Translate(fen);
            var rule   = new Core.Validation.Validators.BoardValidation.Rules.CastlingAvailabilityRule();
            var actual = rule.Validate(board);

            Assert.AreEqual(expectedException, actual, message);
        }
Exemplo n.º 2
0
        public static void ValidateEndOfGame(string fen, BoardExceptionType expectedException)
        {
            var board  = FenReader.Translate(fen);
            var rule   = new Core.Validation.Validators.BoardValidation.Rules.EndOfGameRule();
            var actual = rule.Validate(board);

            Assert.AreEqual(expectedException, actual);
        }
Exemplo n.º 3
0
        public static void TestEnPassant(string fen, BoardExceptionType expectedException)
        {
            var enPassantValidator =
                new EnPassantPositionRule();
            var board = FenReader.Translate(fen);
            var actualExceptionType = enPassantValidator.Validate(board);

            Assert.AreEqual(expectedException, actualExceptionType);
        }
Exemplo n.º 4
0
        public static BoardException MakeBoardException(BoardExceptionType exceptionType)
        {
            var sb = new StringBuilder();

            foreach (var validationIssue in exceptionType.GetFlags())
            {
                sb.AppendLine($"* {validationIssue.AsString(EnumFormat.Description)}");
            }

            return(new BoardException(exceptionType, sb.ToString()));
        }
Exemplo n.º 5
0
        public static void TestPawnCounts(string fen, BoardExceptionType expectedResult)
        {
            var actual = BoardExceptionType.None;

            try
            {
                var board     = FenReader.Translate(fen);
                var validator = new BoardValidator();
                validator.Validate(board);
            }
            catch (BoardException exc)
            {
                actual = exc.ExceptionType;
            }

            Assert.AreEqual(expectedResult, actual);
        }
Exemplo n.º 6
0
        public static void ValidateCheck(string fen, BoardExceptionType expectedException)
        {
            var actual = BoardExceptionType.None;

            try
            {
                var board          = FenReader.Translate(fen);
                var boardValidator = new BoardValidator();
                boardValidator.Validate(board);
            }
            catch (BoardException be)
            {
                actual = be.ExceptionType;
            }

            Assert.AreEqual(expectedException, actual);
        }
Exemplo n.º 7
0
 public BoardException(BoardExceptionType exceptionType, string message) : base(message)
 {
     ExceptionType = exceptionType;
 }