Пример #1
0
            public void Returns_No_When_Destination_Is_Invalid()
            {
                var move       = new MoveAttempt(_board, _whiteStart, new BoardCoordinate(2, 3));
                var moveResult = _referee.TryMove(move);

                Assert.AreEqual(MoveResult.Failed(), moveResult);
            }
Пример #2
0
            public void Returns_No_When_Diagonal_Move_Is_Blocked()
            {
                _blackStart = new BoardCoordinate(4, 4);
                _board.AddPiece(_blackQueen, _blackStart);

                var move       = new MoveAttempt(_board, _whiteStart, new BoardCoordinate(8, 8));
                var moveResult = _referee.TryMove(move);

                Assert.AreEqual(MoveResult.Failed(), moveResult);
            }
Пример #3
0
            public void Returns_No_When_Diagonal_Move_Is_Blocked_From_Non_1_1_Start()
            {
                var newWhiteStart = new BoardCoordinate(2, 1);

                _board.RemovePiece(_whiteStart);
                _board.AddPiece(_whiteQueen, newWhiteStart);
                _blackStart = new BoardCoordinate(3, 2);
                _board.AddPiece(_blackQueen, _blackStart);

                var move       = new MoveAttempt(_board, newWhiteStart, new BoardCoordinate(4, 3));
                var moveResult = _referee.TryMove(move);

                Assert.AreEqual(MoveResult.Failed(), moveResult);
            }
Пример #4
0
            public void Returns_No_When_Not_Solving_Check()
            {
                var king      = new King(PlayerColor.Black);
                var kingStart = new BoardCoordinate(1, 8);

                _board.AddPiece(king, kingStart);

                _blackStart = new BoardCoordinate(2, 4);
                _board.AddPiece(_blackQueen, _blackStart);

                var move       = new MoveAttempt(_board, _blackStart, new BoardCoordinate(2, 8));
                var moveResult = _referee.TryMove(move);

                Assert.AreEqual(MoveResult.Failed(), moveResult);
            }