@Before
 public void setUp() {
   String[][] testGrid = {
     {"LE", "E", "E", "E", "E"},
     {"E", "E", "E", "E", "E"},
     {"E", "LE", "LB", "E", "E"},
     {"E", "E", "E", "E", "E"},
     {"E", "E", "E", "E", "E"},
   };
   frame = new GridFrameTestDouble(testGrid, FRAME_HEIGHT, FRAME_WIDTH);
   initialNumBombs = frame.numActiveBombs();
 }
 @Test
 public void uncoveringEmptySquareNotNearBombShouldUncoverAdditionalSquares() {
   frame.click(0);
   assertEquals(GridSquare.CLEARED, frame.theGrid[0][0].getBackground());
   assertEquals(GridSquare.CLEARED, frame.theGrid[4][4].getBackground());
 }
 @Test
 public void uncoverDoesNotFailWhenCalledOutsideGridRangeRight() {
   frame.uncover(new GridSquare(FRAME_HEIGHT, FRAME_WIDTH + 1));
 }
 @Test
 public void uncoverDoesNotFailWhenCalledOutsideGridRangeTop() {
   frame.uncover(new GridSquare(-1, FRAME_WIDTH));
 }
 @Test
 public void uncoverDoesNotFailWhenCalledOutsideGridRangeBottom() {
   frame.uncover(new GridSquare(FRAME_HEIGHT + 1, FRAME_WIDTH));
 }
 @Test
 public void uncoverDoesNotFailWhenCalledOutsideGridRangeTopLeft() {
   frame.uncover(new GridSquare(-1, -1));
 }
 @Test
 public void incrementBadFlagsTest() {
   frame.incrementBadFlags();
   assertEquals(1, frame.numBadFlags());
 }
 @Test
 public void decrementBadFlagsTest() {
   frame.decrementBadFlags();
   assertEquals(-1, frame.numBadFlags());
 }
 @Test
 public void incrementFlaggedBombsTest() {
   frame.incrementFlaggedBombs();
   assertEquals(initialNumBombs + 1, frame.numActiveBombs());
 }
 @Test
 public void uncoveringABombShouldMakeItExplode() {
   frame.click(2);
   assertEquals(BombSquare.BLOW_UP, frame.theGrid[2][2].getBackground());
 }
 @Test
 public void uncoveringEmptySquareNearBombShouldNotUncoverAdditionalSquares() {
   frame.click(1);
   assertEquals(GridSquare.ALERT, frame.theGrid[2][1].getBackground());
   assertEquals(GridSquare.NON_ACTIVE_COLOR, frame.theGrid[4][4].getBackground());
 }