package model; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import static org.assertj.core.api.Assertions.assertThat; public class GridTest { private Grid grid; @BeforeEach public void initializeGrid(){ grid = new Grid(3,3); } @Test public void testGetNeighbors(){ assertThat(grid.getNeighbors(1,1)).isNotNull(); assertThat(grid.getNeighbors(1,1)).hasSize(8); assertThat(grid.getNeighbors(1,1)) .containsExactlyInAnyOrder(grid.getCell(0,0), grid.getCell(0,1), grid.getCell(0,2), grid.getCell(1,0), grid.getCell(1,2), grid.getCell(2,0), grid.getCell(2,1), grid.getCell(2,2)); } @Test public void testCountAliveNeighbors(){ assertThat(grid.countAliveNeighbors(1,1)).isEqualTo(0); grid.getCell(2,2).setState(CellState.ALIVE); grid.getCell(0,0).setState(CellState.ALIVE); assertThat(grid.countAliveNeighbors(1,1)).isEqualTo(2); } }