public void blackPawnCanMoveTwoSpacesAtStart() { Board b = TestBoard.createAndSetupBoard(); b.Select(1, 0); b.Move(3, 0); }
public void blackPawnCannotMoveBackwards() { Board b = TestBoard.createAndSetupBoard(); b.Select(1, 0); b.Move(0, 0); }
public void canSimTillCheckMate() { Board b = TestBoard.createAndSetupBoard(); int checkMateCounter = 0; foreach (Board.BoardWithHistory simBoard in b.EnumSimTill(Piece.PlayerColour.White, C => { if (C.MoveCount == 10) { return(true); } else { King blackKing = C.Board.GetFirstPiece <King>(Piece.PlayerColour.Black); return(blackKing.InCheckMate); } })) { King blackKing = simBoard.Board.GetFirstPiece <King>(Piece.PlayerColour.Black); if (blackKing.InCheckMate) { checkMateCounter++; } } int x = 46; }
public void whitePawnCannotTakeTwoRowsForwardAtStart() { Board b = TestBoard.createAndSetupBoard(); b.Select(1, 0); b.Move(3, 0); b.Select(6, 1); b.Move(4, 1); b.Select(3, 0); b.Move(4, 1); b.Select(4, 1); b.Move(5, 1); b.Select(1, 1); b.Move(3, 1); b.Select(3, 1); b.Move(4, 1); b.Select(6, 0); b.Move(4, 1); }
public void canTakePawnEnPassantLeft() { Board b = TestBoard.createAndSetupBoard(); setupWhiteEnPassantLeft(b); whiteTakeEnPassantLeft(b); }
public void blackPawnCannotTakeEmptyPieceRight() { Board b = TestBoard.createAndSetupBoard(); b.Select(1, 7); b.Move(2, 6); }
public void canBlackPawnMoveOneSpaceForward() { Board b = TestBoard.createAndSetupBoard(); b.Select(1, 0); b.Move(2, 0); }
public void canGetSelectedCell() { Board b = TestBoard.createAndSetupBoard(); b.Select(0, 1); Assert.AreEqual <Cell>(b[0, 1], b.SelectedCell); }
public void exceptionWhenMoveTooLargeRow() { Board b = TestBoard.createAndSetupBoard(); b.Select(6, 0); b.Move(Board.NumOfRows + 1, 0); }
public void areQueensSetup() { Board b = TestBoard.createAndSetupBoard(); Assert.AreEqual <char>(Piece.Queen, b[0, 3].Piece.Type); Assert.AreEqual <char>(Piece.Queen, b[7, 3].Piece.Type); }
public void whitePawnCanMoveTwoSpacesAtStart() { Board b = TestBoard.createAndSetupBoard(); b.Select(6, 0); b.Move(4, 0); }
public void whitePawnCannotTakeEmptyPieceLeft() { Board b = TestBoard.createAndSetupBoard(); b.Select(6, 1); b.Move(5, 0); }
public void whitePawnCannotMoveBackwards() { Board b = TestBoard.createAndSetupBoard(); b.Select(6, 0); b.Move(7, 0); }
public void exceptionWhenMoveTooLargeCol() { Board b = TestBoard.createAndSetupBoard(); b.Select(6, 0); b.Move(0, Board.NumOfCols + 1); }
public void canWhitePawnMoveOneSpaceForward() { Board b = TestBoard.createAndSetupBoard(); b.Select(6, 0); //White 1st pawn b.Move(5, 0); }
public void cannotMove2AtStartIfPieceJustInFront() { Board b = TestBoard.createAndSetupBoard(); b.Select(6, 7); b.Move(5, 7); b.Select(1, 0); b.Move(3, 0); b.Select(6, 6); b.Move(5, 6); b.Select(3, 0); b.Move(4, 0); b.Select(6, 5); b.Move(5, 5); b.Select(4, 0); b.Move(5, 0); b.Select(6, 0); b.Move(4, 0); }
public void exceptionWhenMoveToNegativeCol() { Board b = TestBoard.createAndSetupBoard(); b.Select(6, 0); b.Move(0, -1); }
public void areKingsSetup() { Board b = TestBoard.createAndSetupBoard(); Assert.AreEqual <char>(Piece.King, b[0, 4].Piece.Type); Assert.AreEqual <char>(Piece.King, b[7, 4].Piece.Type); }
public void selectedCellIsNullAfterMove() { Board b = TestBoard.createAndSetupBoard(); b.Select(6, 0); //white 1st pawn b.Move(5, 0); Assert.IsNull(b.SelectedCell); }
public void cannotMoveEnPassantIfOtherPieceNotAPawn() { Board b = TestBoard.createAndSetupBoard(); setupWhiteEnPassantRight(b); b[3, 1].Piece = new Bishop(Piece.PlayerColour.Black, b[3, 1], b); whiteTakeEnPassantRight(b); }
public void moveEnPassantLeftRemovesPiece() { Board b = TestBoard.createAndSetupBoard(); setupWhiteEnPassantLeft(b); whiteTakeEnPassantLeft(b); Assert.IsTrue(b.IsCellEmpty(3, 0)); }
public void areKnightsSetup() { Board b = TestBoard.createAndSetupBoard(); Assert.AreEqual <char>(Piece.Knight, b[0, 1].Piece.Type); Assert.AreEqual <char>(Piece.Knight, b[0, 6].Piece.Type); Assert.AreEqual <char>(Piece.Knight, b[7, 1].Piece.Type); Assert.AreEqual <char>(Piece.Knight, b[7, 6].Piece.Type); }
public void areRooksSetup() { Board b = TestBoard.createAndSetupBoard(); Assert.AreEqual <char>(Piece.Rook, b[0, 0].Piece.Type); Assert.AreEqual <char>(Piece.Rook, b[0, 7].Piece.Type); Assert.AreEqual <char>(Piece.Rook, b[7, 0].Piece.Type); Assert.AreEqual <char>(Piece.Rook, b[7, 7].Piece.Type); }
public void areBishopsSetup() { Board b = TestBoard.createAndSetupBoard(); Assert.AreEqual <char>(Piece.Bishop, b[0, 2].Piece.Type); Assert.AreEqual <char>(Piece.Bishop, b[0, 5].Piece.Type); Assert.AreEqual <char>(Piece.Bishop, b[7, 2].Piece.Type); Assert.AreEqual <char>(Piece.Bishop, b[7, 5].Piece.Type); }
public void queensSetupOnCorrectColour() { Board b = TestBoard.createAndSetupBoard(); Assert.AreEqual <Color>(Color.White, b[0, 0].Colour); Assert.AreEqual <Color>(Color.White, b[7, 3].Colour); Assert.AreEqual <Color>(Color.Black, b[0, 3].Colour); Assert.AreEqual <Color>(Color.Black, b[7, 0].Colour); }
public void moveEnPassantLeftNotImmediateThrowError() { Board b = TestBoard.createAndSetupBoard(); setupWhiteEnPassantLeft(b); White6thPawnUpOne(b); Black3rdPawnUpOne(b); whiteTakeEnPassantLeft(b); }
public void kingNotInCheckMateByDefault() { Board b = TestBoard.createAndSetupBoard(); King wk = b.GetFirstPiece <King>(Piece.PlayerColour.White); King bk = b.GetFirstPiece <King>(Piece.PlayerColour.Black); Assert.IsFalse(wk.InCheckMate); Assert.IsFalse(bk.InCheckMate); }
public void blackPawnCannotMoveTwoSpacesAfterStart() { Board b = TestBoard.createAndSetupBoard(); b.Select(1, 0); b.Move(2, 0); b.Select(2, 0); b.Move(4, 0); }
public void isCellEmptyWhenMovedOff() { Board b = TestBoard.createAndSetupBoard(); b.Select(6, 0); //white 1st pawn GameCell selectedCell = b.SelectedCell; b.Move(5, 0); Assert.AreEqual <char>(selectedCell.Piece.Type, Piece.Empty); }
public void arePawnsSetup() { Board b = TestBoard.createAndSetupBoard(); for (int i = 0; i < Board.NumOfCols; i++) { Assert.AreEqual <char>(Piece.Pawn, b[1, i].Piece.Type); Assert.AreEqual <char>(Piece.Pawn, b[6, i].Piece.Type); } }