1.1 --- a/minesweeper/src/test/java/org/apidesign/demo/minesweeper/MinesModelTest.java Fri Feb 07 15:21:54 2014 +0100
1.2 +++ b/minesweeper/src/test/java/org/apidesign/demo/minesweeper/MinesModelTest.java Fri Feb 07 16:35:45 2014 +0100
1.3 @@ -67,6 +67,17 @@
1.4 assertSquare(m, 0, 2, SquareType.N_1);
1.5 assertSquare(m, 2, 2, SquareType.UNKNOWN);
1.6 }
1.7 +
1.8 + public void gameIsWonIfAllMinesDiscovered() {
1.9 + Mines m = new Mines();
1.10 + m.init(2, 1, 0);
1.11 + set(m, 0, 0, SquareType.UNKNOWN, true);
1.12 + m.computeMines();
1.13 + assertEquals(m.getState(), MinesModel.GameState.IN_PROGRESS);
1.14 + set(m, 1, 0, SquareType.N_0, false);
1.15 + m.computeMines();
1.16 + assertEquals(m.getState(), MinesModel.GameState.WON, "All non-bomb squares discovered");
1.17 + }
1.18
1.19 private static void set(Mines m, int x, int y, SquareType squareType, boolean mine) {
1.20 Square sq = m.getRows().get(y).getColumns().get(x);