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); }
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); }
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); }
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); }