-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTicTacToeTest.java
More file actions
130 lines (115 loc) · 4.95 KB
/
Copy pathTicTacToeTest.java
File metadata and controls
130 lines (115 loc) · 4.95 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
package practice.tictactoe;
import java.util.Arrays;
import static practice.utils.Assertions.assertThat;
class TicTacToeTest {
public static void main(String[] args) {
System.out.println("Tests for TicTacToe start");
TicTacToeTest tests = new TicTacToeTest();
tests.addToBoard_succeeds();
tests.printBoard_succeeds();
tests.winningPlayer_succeeds();
System.out.println("Tests for TicTacToe ended");
}
private void addToBoard_succeeds() {
TicTacToe underTest = new TicTacToe();
assertThat(underTest.board[0][0] == 0);
assertThat(underTest.moves == 0);
underTest.addToBoard(1, 1);
assertThat(underTest.board[0][0] == 1);
assertThat(underTest.moves == 1);
assertThat(underTest.board[1][0] == 0);
underTest.addToBoard(2, 4);
assertThat(underTest.board[1][0] == 2);
assertThat(underTest.moves == 2);
assertThat(underTest.board[2][2] == 0);
underTest.addToBoard(1, 9);
assertThat(underTest.board[2][2] == 1);
assertThat(underTest.moves == 3);
assertThat(Arrays.deepEquals(underTest.board, new int[][]{{1, 0, 0}, {2, 0, 0}, {0, 0, 1}}));
}
private void printBoard_succeeds() {
TicTacToe underTest = new TicTacToe();
// System.out.println(underTest.printBoard());
String expectedBoard = """
0 | 0 | 0\s
-----------
0 | 0 | 0\s
-----------
0 | 0 | 0\s""";
assertThat(underTest.printBoard().equals(expectedBoard));
underTest.addToBoard(1, 1);
underTest.addToBoard(2, 4);
underTest.addToBoard(1, 9);
// System.out.println(underTest.printBoard());
expectedBoard = """
1 | 0 | 0\s
-----------
2 | 0 | 0\s
-----------
0 | 0 | 1\s""";
assertThat(underTest.printBoard().equals(expectedBoard));
}
private void winningPlayer_succeeds() {
TicTacToe winningRow = new TicTacToe();
assertThat(winningRow.winningPlayer().isEmpty());
winningRow.addToBoard(1, 1);
assertThat(winningRow.winningPlayer().isEmpty());
winningRow.addToBoard(2, 4);
assertThat(winningRow.winningPlayer().isEmpty());
winningRow.addToBoard(1, 2);
assertThat(winningRow.winningPlayer().isEmpty());
winningRow.addToBoard(2, 5);
assertThat(winningRow.winningPlayer().isEmpty());
winningRow.addToBoard(1, 3);
assertThat(winningRow.winningPlayer().orElse(0) == 1);
TicTacToe winningColumn = new TicTacToe();
assertThat(winningColumn.winningPlayer().isEmpty());
winningColumn.addToBoard(1, 1);
assertThat(winningColumn.winningPlayer().isEmpty());
winningColumn.addToBoard(2, 3);
assertThat(winningColumn.winningPlayer().isEmpty());
winningColumn.addToBoard(1, 4);
assertThat(winningColumn.winningPlayer().isEmpty());
winningColumn.addToBoard(2, 6);
assertThat(winningColumn.winningPlayer().isEmpty());
winningColumn.addToBoard(1, 8);
winningColumn.addToBoard(2, 9);
assertThat(winningColumn.winningPlayer().orElse(0) == 2);
TicTacToe noWinner = new TicTacToe();
assertThat(noWinner.winningPlayer().isEmpty());
noWinner.addToBoard(1, 1);
assertThat(noWinner.winningPlayer().isEmpty());
noWinner.addToBoard(2, 5);
assertThat(noWinner.winningPlayer().isEmpty());
noWinner.addToBoard(1, 2);
assertThat(noWinner.winningPlayer().isEmpty());
noWinner.addToBoard(2, 3);
assertThat(noWinner.winningPlayer().isEmpty());
noWinner.addToBoard(1, 7);
assertThat(noWinner.winningPlayer().isEmpty());
noWinner.addToBoard(2, 4);
assertThat(noWinner.winningPlayer().isEmpty());
noWinner.addToBoard(1, 6);
assertThat(noWinner.winningPlayer().isEmpty());
noWinner.addToBoard(2, 8);
assertThat(noWinner.winningPlayer().isEmpty());
noWinner.addToBoard(1, 9);
// System.out.println(noWinner.printBoard());
assertThat(noWinner.winningPlayer().isEmpty());
TicTacToe winningAngle = new TicTacToe();
assertThat(winningAngle.winningPlayer().isEmpty());
winningAngle.addToBoard(1, 1);
assertThat(winningAngle.winningPlayer().isEmpty());
winningAngle.addToBoard(2, 5);
assertThat(winningAngle.winningPlayer().isEmpty());
winningAngle.addToBoard(1, 2);
assertThat(winningAngle.winningPlayer().isEmpty());
winningAngle.addToBoard(2, 3);
assertThat(winningAngle.winningPlayer().isEmpty());
winningAngle.addToBoard(1, 4);
assertThat(winningAngle.winningPlayer().isEmpty());
winningAngle.addToBoard(2, 7);
// System.out.println(winningAngle.printBoard());
assertThat(winningColumn.winningPlayer().orElse(0) == 2);
}
}