@Test
  public void testTicBoxThreeTics() {
    GameLogic g = new GameLogic();

    g.ticBox(0);
    g.ticBox(1);
    g.ticBox(2);
    assertEquals(1, g.getBoard().getCellValue(0));
    assertEquals(2, g.getBoard().getCellValue(1));
    assertEquals(1, g.getBoard().getCellValue(2));
  }
  @Test
  public void testLegalMoveNotEmpty() {
    GameLogic g = new GameLogic();

    g.ticBox(0);
    assertEquals(false, g.legalMove(0));
    assertEquals(true, g.legalMove(1));

    g.ticBox(1);
    assertEquals(false, g.legalMove(1));
    assertEquals(true, g.legalMove(2));
    assertEquals(false, g.legalMove(0));
  }
  @Test
  public void testTicBoxSingleTic() {
    GameLogic g = new GameLogic();

    g.ticBox(3);
    assertEquals(1, g.getBoard().getCellValue(3));
  }
  @Test
  public void testGetCellValuePlayerX() {
    GameLogic g = new GameLogic();

    g.ticBox(7);
    assertEquals(1, g.getBoard().getCellValue(7));
  }
  @Test
  public void testGetCellValuePlayerO() {
    GameLogic g = new GameLogic();

    g.ticBox(2);
    g.ticBox(3);
    assertEquals(2, g.getBoard().getCellValue(3));
  }
  @Test
  public void testCounter() {
    GameLogic g = new GameLogic();

    for (int i = 0; i < 10; i++) {
      g.ticBox(i);
    }
    assertEquals(9, g.getCountMoves());
  }
  @Test
  public void testTicBoxTwoTics() {
    GameLogic g = new GameLogic();

    g.ticBox(4);
    g.ticBox(5);
    assertEquals(1, g.getBoard().getCellValue(4));
    assertEquals(2, g.getBoard().getCellValue(5));
  }
  @Test
  public void testCheckForWin() {
    GameLogic g = new GameLogic();

    g.ticBox(0);
    g.ticBox(1);

    assertEquals(false, g.checkForWin());

    g.ticBox(2);
    g.ticBox(8);
    g.ticBox(3);
    g.ticBox(4);
    g.ticBox(5);

    assertEquals(false, g.checkForWin());

    g.ticBox(7);

    assertEquals(true, g.checkForWin());
  }