@Test public void whenKingIsThreatenedFromTwoDirectionsHeCanMoveToSafetyNotCheckMate() { board.attemptToPlacePiece(bKing, 4); board.attemptToPlacePiece(wQueen, 0); board.attemptToPlacePiece(wQueen, 63); board.attemptToMovePiece(21, 17); assertEquals(false, observer.isCheckMate()); }
@Test public void whenKingIsThreatenedFromTwoDirectionsAtOnceWhenAloneHeIsInCheckMate() { board.attemptToPlacePiece(bKing, 4); board.attemptToPlacePiece(wQueen, 0); board.attemptToPlacePiece(wQueen, 21); board.attemptToMovePiece(21, 20); assertEquals(true, observer.isCheckMate()); }
@Test public void whenKingIsThreatenedEnemyCanBeBlocked() { board.attemptToPlacePiece(bKing, 0); board.attemptToPlacePiece(wPawn, 8); board.attemptToPlacePiece(wPawn, 9); board.attemptToPlacePiece(bRook, 10); board.attemptToPlacePiece(wRook, 7); assertEquals(false, observer.isCheckMate()); }
@Test public void whenKingThreatenedFromOneDirectionEnemyCanBeEatenToSaveKing() { board.attemptToPlacePiece(bKing, 0); board.attemptToPlacePiece(wPawn, 8); board.attemptToPlacePiece(wPawn, 9); board.attemptToPlacePiece(bRook, 14); board.attemptToPlacePiece(wRook, 7); assertEquals(false, observer.isCheckMate()); }
@Test public void whenKingIsThreatenedSomeOneCanComeBetweenInCloseRange() { board.attemptToPlacePiece(wKing, 62); board.attemptToPlacePiece(wPawn, 53); board.attemptToPlacePiece(wPawn, 55); board.attemptToPlacePiece(wPawn, 46); board.attemptToPlacePiece(wQueen, 54); board.attemptToPlacePiece(bQueen, 58); board.attemptToPlacePiece(bQueen, 43); assertEquals(false, observer.isCheckMate()); }
@Test public void whenKingIsThreatenedFromOneDirectionHeCanMoveToSafety() { board.attemptToPlacePiece(wKing, 4); board.attemptToPlacePiece(bQueen, 0); assertEquals(false, observer.isCheckMate()); }