minesweeper/src/test/java/org/apidesign/demo/minesweeper/MinesModelTest.java
branchminesweeper
changeset 66 9cf895cde4bd
parent 64 3a82f9e6eddd
child 67 2e910e06ed34
     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);