Skip to content

Commit 615d738

Browse files
committed
Add Junit tests
1 parent 89e2dde commit 615d738

3 files changed

Lines changed: 87 additions & 18 deletions

File tree

src/main/java/pl/nogacz/chess/application/Computer.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -98,10 +98,8 @@ public void getGameData() {
9898

9999
public Coordinates choosePawn() {
100100
switch (skill) {
101-
case 1:
102-
return choosePawnEasy();
103-
default:
104-
return choosePawnNormal();
101+
case 1: return choosePawnEasy();
102+
default: return choosePawnNormal();
105103
}
106104
}
107105

src/test/java/pl/nogacz/chess/application/ComputerTest.java

Lines changed: 0 additions & 12 deletions
This file was deleted.
Lines changed: 85 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,95 @@
11
package pl.nogacz.chess.application;
22

3+
import org.junit.Assert;
34
import org.junit.Test;
5+
import org.junit.runner.RunWith;
6+
import org.powermock.api.mockito.PowerMockito;
7+
import org.powermock.core.classloader.annotations.PrepareForTest;
8+
import org.powermock.modules.junit4.PowerMockRunner;
9+
import pl.nogacz.chess.board.Board;
10+
import pl.nogacz.chess.board.Coordinates;
11+
import pl.nogacz.chess.pawns.Pawn;
12+
import pl.nogacz.chess.pawns.PawnClass;
13+
import pl.nogacz.chess.pawns.PawnColor;
414

5-
import static org.junit.Assert.*;
15+
import java.util.HashMap;
616

717
/**
818
* @author Dawid Nogacz on 05.05.2019
919
*/
20+
@RunWith(PowerMockRunner.class)
1021
public class GameLogicTest {
11-
//TODO
22+
@PrepareForTest({Board.class})
23+
@Test
24+
public void isMovePossibleIfBoardIsEmpty() {
25+
//Given
26+
PowerMockito.mockStatic(Board.class);
27+
GameLogic gameLogic = new GameLogic();
28+
29+
HashMap<Coordinates, PawnClass> board = new HashMap<>();
30+
31+
//When
32+
PowerMockito.when(Board.getBoard()).thenReturn(board);
33+
gameLogic.prepareData();
34+
boolean isMovePossible = gameLogic.isMovePossible();
35+
36+
//Then
37+
Assert.assertEquals(false, isMovePossible);
38+
}
39+
40+
@PrepareForTest({Board.class})
41+
@Test
42+
public void isMovePossibleIfBoardIsFull() {
43+
//Given
44+
PowerMockito.mockStatic(Board.class);
45+
GameLogic gameLogic = new GameLogic();
46+
47+
PawnClass pawnWhite = new PawnClass(Pawn.PAWN, PawnColor.WHITE);
48+
PawnClass pawnBlack = new PawnClass(Pawn.PAWN, PawnColor.BLACK);
49+
50+
HashMap<Coordinates, PawnClass> board = new HashMap<>();
51+
board.put(new Coordinates(0, 0), pawnBlack);
52+
board.put(new Coordinates(0, 6), pawnWhite);
53+
board.put(new Coordinates(0, 1), pawnBlack);
54+
board.put(new Coordinates(0, 6), pawnWhite);
55+
56+
//When
57+
PowerMockito.when(Board.getBoard()).thenReturn(board);
58+
PowerMockito.when(Board.getPawn(new Coordinates(0,0))).thenReturn(pawnBlack);
59+
PowerMockito.when(Board.getPawn(new Coordinates(0,6))).thenReturn(pawnWhite);
60+
PowerMockito.when(Board.getPawn(new Coordinates(0,1))).thenReturn(pawnBlack);
61+
PowerMockito.when(Board.getPawn(new Coordinates(0,6))).thenReturn(pawnWhite);
62+
63+
gameLogic.prepareData();
64+
boolean isMovePossible = gameLogic.isMovePossible();
65+
66+
//Then
67+
Assert.assertEquals(true, isMovePossible);
68+
}
69+
70+
@PrepareForTest({Board.class})
71+
@Test
72+
public void isMovePossibleIfBoardIsOnlyKing() {
73+
//Given
74+
PowerMockito.mockStatic(Board.class);
75+
GameLogic gameLogic = new GameLogic();
76+
77+
PawnClass pawnWhite = new PawnClass(Pawn.KING, PawnColor.WHITE);
78+
PawnClass pawnBlack = new PawnClass(Pawn.KING, PawnColor.BLACK);
79+
80+
HashMap<Coordinates, PawnClass> board = new HashMap<>();
81+
board.put(new Coordinates(0, 0), pawnBlack);
82+
board.put(new Coordinates(0, 6), pawnWhite);
83+
84+
//When
85+
PowerMockito.when(Board.getBoard()).thenReturn(board);
86+
PowerMockito.when(Board.getPawn(new Coordinates(0,0))).thenReturn(pawnBlack);
87+
PowerMockito.when(Board.getPawn(new Coordinates(0,6))).thenReturn(pawnWhite);
88+
89+
gameLogic.prepareData();
90+
boolean isMovePossible = gameLogic.isMovePossible();
91+
92+
//Then
93+
Assert.assertEquals(false, isMovePossible);
94+
}
1295
}

0 commit comments

Comments
 (0)