@Test public void checkWhiteKnightsPosition() { // White Knights are at row 7, col 1 and 6 game = new Chess(); boolean isLeftKnight = game.getPieceAt(7, 1) instanceof Knight; boolean isRightKnight = game.getPieceAt(7, 6) instanceof Knight; boolean isLeftWhite = game.getPieceAt(7, 1).getColor() == PColor.White; boolean isRightWhite = game.getPieceAt(7, 6).getColor() == PColor.White; assertTrue(isLeftKnight && isRightKnight && isLeftWhite && isRightWhite); }
@Test public void checkBlackBishopsPositions() { // Black Bishops are at row 0, col 2 and 5 game = new Chess(); boolean isLeftBishop = game.getPieceAt(0, 2) instanceof Bishop; boolean isRightBishop = game.getPieceAt(0, 5) instanceof Bishop; boolean isLeftBlack = game.getPieceAt(0, 2).getColor() == PColor.Black; boolean isRightBlack = game.getPieceAt(0, 5).getColor() == PColor.Black; assertTrue(isLeftBishop && isRightBishop && isLeftBlack && isRightBlack); }
@Test public void checkWhiteBishopsPosition() { // White Bishops are at row 7, col 2 and 5 game = new Chess(); boolean isLeftBishop = game.getPieceAt(7, 2) instanceof Bishop; boolean isRightBishop = game.getPieceAt(7, 5) instanceof Bishop; boolean isLeftWhite = game.getPieceAt(7, 2).getColor() == PColor.White; boolean isRightWhite = game.getPieceAt(7, 5).getColor() == PColor.White; assertTrue(isLeftBishop && isRightBishop && isLeftWhite && isRightWhite); }
@Test public void checkBlackKnightsPositions() { // Black Knights are at row 0, col 1 and 6 game = new Chess(); boolean isLeftKnight = game.getPieceAt(0, 1) instanceof Knight; boolean isRightKnight = game.getPieceAt(0, 6) instanceof Knight; boolean isLeftBlack = game.getPieceAt(0, 1).getColor() == PColor.Black; boolean isRightBlack = game.getPieceAt(0, 6).getColor() == PColor.Black; assertTrue(isLeftKnight && isRightKnight && isLeftBlack && isRightBlack); }
/** @author andy */ public class KnightTester { Chess game = new Chess(); Board boardTest = new Board(); Pawn whitePawn = (Pawn) game.getPieceAt(6, 1); Pawn blackPawn = (Pawn) game.getPieceAt(1, 1); @Test public void checkWhiteKnightsPosition() { // White Knights are at row 7, col 1 and 6 game = new Chess(); boolean isLeftKnight = game.getPieceAt(7, 1) instanceof Knight; boolean isRightKnight = game.getPieceAt(7, 6) instanceof Knight; boolean isLeftWhite = game.getPieceAt(7, 1).getColor() == PColor.White; boolean isRightWhite = game.getPieceAt(7, 6).getColor() == PColor.White; assertTrue(isLeftKnight && isRightKnight && isLeftWhite && isRightWhite); } @Test public void checkBlackKnightsPositions() { // Black Knights are at row 0, col 1 and 6 game = new Chess(); boolean isLeftKnight = game.getPieceAt(0, 1) instanceof Knight; boolean isRightKnight = game.getPieceAt(0, 6) instanceof Knight; boolean isLeftBlack = game.getPieceAt(0, 1).getColor() == PColor.Black; boolean isRightBlack = game.getPieceAt(0, 6).getColor() == PColor.Black; assertTrue(isLeftKnight && isRightKnight && isLeftBlack && isRightBlack); } @Test public void knightMovementUpLeftTwoCols() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertTrue(game.checkMove(4, 4, 3, 2, knight)); } @Test public void knightMovementUpLeftOneCol() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertTrue(game.checkMove(4, 4, 2, 3, knight)); } @Test public void knightMovementUpRightTwoCols() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertTrue(game.checkMove(4, 4, 3, 6, knight)); } @Test public void knightMovementUpRightOneCol() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertTrue(game.checkMove(4, 4, 2, 5, knight)); } @Test public void knightMovementDownRightTwoCols() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertTrue(game.checkMove(4, 4, 5, 6, knight)); } @Test public void knightMovementDownRightOneCol() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertTrue(game.checkMove(4, 4, 6, 5, knight)); } @Test public void knightMovementDownLeftTwoCols() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertTrue(game.checkMove(4, 4, 5, 2, knight)); } @Test public void knightMovementDownLeftOneCol() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertTrue(game.checkMove(4, 4, 6, 3, knight)); } @Test public void knightCantMoveToSameColorPieceBlack() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); game.setPieceAt(2, 3, blackPawn); assertFalse(game.checkMove(4, 4, 2, 3, knight)); } @Test public void knightCantMoveToSameColorPieceWhite() { game = new Chess(); Knight knight = new Knight(PColor.White); game.setPieceAt(4, 4, knight); game.setPieceAt(2, 3, whitePawn); assertFalse(game.checkMove(4, 4, 2, 3, knight)); } @Test public void knightCanCapture() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); game.setPieceAt(2, 3, whitePawn); assertTrue(game.checkMove(4, 4, 2, 3, knight)); } @Test public void knightInvalidMovePatternTooManyRows() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertFalse(game.checkMove(4, 4, 7, 3, knight)); } @Test public void knightInvalidMovePatternTooManyCols() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertFalse(game.checkMove(4, 4, 2, 1, knight)); } @Test public void knightInvalidMovePatternTooFewRows() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertFalse(game.checkMove(4, 4, 4, 2, knight)); } @Test public void knightInvalidMovePatternTooFewCols() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertFalse(game.checkMove(4, 4, 2, 4, knight)); } @Test public void knightInvalidMovePatternTooFewCols2() { game = new Chess(); Knight knight = new Knight(PColor.Black); game.setPieceAt(4, 4, knight); assertFalse(game.checkMove(4, 4, 3, 4, knight)); } }
/** @author andy */ public class BishopTester { Chess game = new Chess(); Board boardTest = new Board(); Pawn whitePawn = (Pawn) game.getPieceAt(6, 1); Pawn blackPawn = (Pawn) game.getPieceAt(1, 1); @Test public void checkWhiteBishopsPosition() { // White Bishops are at row 7, col 2 and 5 game = new Chess(); boolean isLeftBishop = game.getPieceAt(7, 2) instanceof Bishop; boolean isRightBishop = game.getPieceAt(7, 5) instanceof Bishop; boolean isLeftWhite = game.getPieceAt(7, 2).getColor() == PColor.White; boolean isRightWhite = game.getPieceAt(7, 5).getColor() == PColor.White; assertTrue(isLeftBishop && isRightBishop && isLeftWhite && isRightWhite); } @Test public void checkBlackBishopsPositions() { // Black Bishops are at row 0, col 2 and 5 game = new Chess(); boolean isLeftBishop = game.getPieceAt(0, 2) instanceof Bishop; boolean isRightBishop = game.getPieceAt(0, 5) instanceof Bishop; boolean isLeftBlack = game.getPieceAt(0, 2).getColor() == PColor.Black; boolean isRightBlack = game.getPieceAt(0, 5).getColor() == PColor.Black; assertTrue(isLeftBishop && isRightBishop && isLeftBlack && isRightBlack); } @Test public void bishopMovementUpRight() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(5, 2, bishop); assertTrue(game.checkMove(5, 2, 2, 5, bishop)); } @Test public void bishopMovementUpRightPieceBlocking() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(5, 2, bishop); game.setPieceAt(3, 4, whitePawn); assertFalse(game.checkMove(5, 2, 2, 5, bishop)); } @Test public void bishopMovementUpRightSameColorInPlace() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(5, 2, bishop); game.setPieceAt(2, 5, blackPawn); assertFalse(game.checkMove(5, 2, 2, 5, bishop)); } @Test public void bishopMovementDownRight() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(2, 1, bishop); assertTrue(game.checkMove(2, 1, 5, 4, bishop)); } @Test public void bishopMovementDownRightPieceBlocking() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(2, 1, bishop); game.setPieceAt(4, 3, whitePawn); assertFalse(game.checkMove(2, 1, 5, 4, bishop)); } @Test public void bishopMovementDownRightSameColorInPlace() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(2, 1, bishop); game.setPieceAt(5, 4, blackPawn); assertFalse(game.checkMove(2, 1, 5, 4, bishop)); } @Test public void bishopMovementDownLeft() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(2, 5, bishop); assertTrue(game.checkMove(2, 5, 5, 2, bishop)); } @Test public void bishopMovementDownLeftPieceBlocking() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(2, 5, bishop); game.setPieceAt(4, 3, whitePawn); assertFalse(game.checkMove(2, 5, 5, 2, bishop)); } @Test public void bishopMovementDownLeftSameColorInPlace() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(2, 5, bishop); game.setPieceAt(5, 2, blackPawn); assertFalse(game.checkMove(2, 5, 5, 2, bishop)); } @Test public void bishopMovementUpLeft() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(5, 5, bishop); assertTrue(game.checkMove(5, 5, 2, 2, bishop)); } @Test public void bishopMovementUpLeftPieceBlocking() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(5, 5, bishop); game.setPieceAt(4, 4, whitePawn); assertFalse(game.checkMove(5, 5, 2, 2, bishop)); } @Test public void bishopMovementUpLeftSameColorInPlace() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(5, 5, bishop); game.setPieceAt(2, 2, blackPawn); assertFalse(game.checkMove(5, 5, 2, 2, bishop)); } @Test public void bishopInvalidMovement() { game = new Chess(); Bishop bishop = new Bishop(PColor.Black); game.setPieceAt(5, 5, bishop); assertFalse(game.checkMove(5, 5, 5, 2, bishop)); } }