diff options
Diffstat (limited to 'core/test/ch/asynk/tankontank/BoardUtils.java')
-rw-r--r-- | core/test/ch/asynk/tankontank/BoardUtils.java | 100 |
1 files changed, 47 insertions, 53 deletions
diff --git a/core/test/ch/asynk/tankontank/BoardUtils.java b/core/test/ch/asynk/tankontank/BoardUtils.java index 5324a93..55cdba8 100644 --- a/core/test/ch/asynk/tankontank/BoardUtils.java +++ b/core/test/ch/asynk/tankontank/BoardUtils.java @@ -7,16 +7,14 @@ import java.util.HashSet; import org.junit.Test; import org.junit.Before; -import com.badlogic.gdx.math.GridPoint2; - -import ch.asynk.tankontank.engine.SearchBoard; +import ch.asynk.tankontank.engine.Tile; import static org.junit.Assert.assertTrue; public class BoardUtils { - private SearchBoard sb; private Helpers.FakeBoard b; + private Helpers.FakeSearchBoard sb; @Before public void initialize() @@ -25,68 +23,68 @@ public class BoardUtils int rows = 9; int mvt = 3; b = new Helpers.FakeBoard(cols, rows, 3); - sb = new SearchBoard(b, cols, rows); + sb = new Helpers.FakeSearchBoard(b, cols, rows); + } + + private void assertTile(Tile t, int col, int row) + { + assertTrue(t.getCol() == col); + assertTrue(t.getRow() == row); } @Test public void testPaths() { - List<ArrayList<SearchBoard.Node>> paths = b.buildPossiblePaths(2, 2, 4, 3); + int n = b.buildPossiblePaths(2, 2, 4, 3); - assertTrue(paths.size() == 8); + assertTrue(n == 8); - for(ArrayList<SearchBoard.Node> path : paths) { + for(int p = 0; p < n; p++) { - assertTrue((path.size() == 3) || (path.size() == 4)); - SearchBoard.Node n = path.get(0); - assertTrue(n.col == 2); - assertTrue(n.row == 2); - n = path.get(path.size() - 1); - assertTrue(n.col == 4); - assertTrue(n.row == 3); + List<Tile> path = b.possiblePaths.getPath(p); + int z = path.size(); - int i = 1; - if (path.size() == 3) { - n = path.get(i); - assertTrue(n.col == 3); - assertTrue((n.row == 3) || (n.row == 2)); - } else { - n = path.get(i); - if (n.col == 2) { + Tile t; + int i = 0; + if (z == 1) { + t = path.get(i); + assertTrue(t.getCol() == 3); + assertTrue((t.getRow() == 2) || (t.getRow() == 3));; + } else if (z == 2) { + t = path.get(i); + if (t.getCol() == 2) { i += 1; - if (n.row == 1) { - n = path.get(i); - assert(n.col == 3); - assert(n.row == 2); + if (t.getRow() == 1) { + t = path.get(i); + assertTile(t, 3, 2); } else { - assert(n.row == 3); - n = path.get(i); - assert(n.col == 3); - assert(n.row == 3); + assert(t.getRow()== 3); + t = path.get(i); + assertTile(t, 3, 3); } - } else if (n.col == 3) { + } else if (t.getCol() == 3) { i += 1; - if (n.row == 2) { - n = path.get(i); - if (n.col == 3) - assert(n.row == 3); + if (t.getRow() == 2) { + t = path.get(i); + if (t.getCol() == 3) + assert(t.getRow()== 3); else { - assert(n.col == 4); - assert(n.row == 2); + assertTile(t, 4, 2); } } else { - assert(n.row == 3); - n = path.get(i); - if (n.col == 3) - assert(n.row == 2); + assert(t.getRow() == 3); + t = path.get(i); + if (t.getCol() == 3) + assert(t.getRow() == 2); else { - assert(n.col == 4); - assert(n.row == 4); + assertTile(t, 4, 4); } } } else { assertTrue(false); } + } else { + assertTrue(false); } } } @@ -94,20 +92,16 @@ public class BoardUtils @Test public void testPathSet() { - HashSet<GridPoint2> points = new HashSet<GridPoint2>(); - - int n = b.buildPossiblePaths(2, 2, 3, 3, points); + int n = b.buildPossiblePaths(2, 2, 3, 3); assertTrue(n == 1); - assertTrue(points.size() == 0); - n = b.buildPossiblePaths(2, 2, 4, 3, points); + n = b.buildPossiblePaths(2, 2, 4, 3); assertTrue(n == 8); - assertTrue(points.size() == 6); n = b.togglePoint(3, 3); assertTrue(n == 1); - n = b.buildPossiblePaths(2, 2, 5, 3, points); + n = b.buildPossiblePaths(2, 2, 5, 3); assertTrue(n == 3); n = b.togglePoint(3, 3); @@ -190,8 +184,8 @@ public class BoardUtils assertTrue(sb.distance(6, 4, 8, 8) == 4); assertTrue(sb.distance(6, 4, 7, 8) == 4); - assertTrue(sb.distance(6, 4, 8, 9) == 5); - assertTrue(sb.distance(6, 4, 9, 9) == 5); + assertTrue(sb.distance(6, 4, 1, 1) == 5); + assertTrue(sb.distance(6, 4, 7, 0) == 5); assertTrue(sb.distance(6, 4, 9, 8) == 4); assertTrue(sb.distance(6, 4, 8, 7) == 3); assertTrue(sb.distance(6, 4, 7, 7) == 3); |