From 2f4b929654f2e77e90b3083d58042cc6d68b4ddf Mon Sep 17 00:00:00 2001 From: Alexander Grooff Date: Wed, 16 Mar 2016 13:55:33 +0100 Subject: [PATCH 1/7] Tests for all children of root for findRightQuad --- .../java/com/jme3/terrain/geomipmap/TerrainQuadTest.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java index b7ed6b1b72..d3d1bbcdc3 100644 --- a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java +++ b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java @@ -35,4 +35,12 @@ public void testGetQuad() { assertEquals(parentTerrainQuad.getQuad(4), children[3]); assertEquals(parentTerrainQuad.getQuad(5), null); } + + @Test + public void testFindRightQuad() { + assertEquals(children[0].findRightQuad(), children[2]); + assertEquals(children[1].findRightQuad(), children[3]); + assertEquals(children[2].findRightQuad(), null); + assertEquals(children[3].findRightQuad(), null); + } } From 0d56f936396bfc742301bd6e226a6271ed90783c Mon Sep 17 00:00:00 2001 From: Alexander Grooff Date: Wed, 16 Mar 2016 14:14:23 +0100 Subject: [PATCH 2/7] Added tests for findDown, Left and Top quad --- .../terrain/geomipmap/TerrainQuadTest.java | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java index d3d1bbcdc3..b0593747c2 100644 --- a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java +++ b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java @@ -43,4 +43,28 @@ public void testFindRightQuad() { assertEquals(children[2].findRightQuad(), null); assertEquals(children[3].findRightQuad(), null); } + + @Test + public void testFindDownQuad() { + assertEquals(children[0].findDownQuad(), children[1]); + assertEquals(children[1].findDownQuad(), null); + assertEquals(children[2].findDownQuad(), children[3]); + assertEquals(children[3].findDownQuad(), null); + } + + @Test + public void testFindLeftQuad() { + assertEquals(children[0].findLeftQuad(), null); + assertEquals(children[1].findLeftQuad(), null); + assertEquals(children[2].findLeftQuad(), children[0]); + assertEquals(children[3].findLeftQuad(), children[1]); + } + + @Test + public void testFindTopQuad() { + assertEquals(children[0].findTopQuad(), null); + assertEquals(children[1].findTopQuad(), children[0]); + assertEquals(children[2].findTopQuad(), null); + assertEquals(children[3].findTopQuad(), children[2]); + } } From 3f74b586da9addc8a54626c8be64d39ed61e740d Mon Sep 17 00:00:00 2001 From: Alexander Grooff Date: Wed, 16 Mar 2016 14:16:09 +0100 Subject: [PATCH 3/7] Added parent findQuad tests --- .../test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java index b0593747c2..acce5a22ed 100644 --- a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java +++ b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java @@ -38,6 +38,7 @@ public void testGetQuad() { @Test public void testFindRightQuad() { + assertEquals(parentTerrainQuad.findRightQuad(), null); assertEquals(children[0].findRightQuad(), children[2]); assertEquals(children[1].findRightQuad(), children[3]); assertEquals(children[2].findRightQuad(), null); @@ -46,6 +47,7 @@ public void testFindRightQuad() { @Test public void testFindDownQuad() { + assertEquals(parentTerrainQuad.findDownQuad(), null); assertEquals(children[0].findDownQuad(), children[1]); assertEquals(children[1].findDownQuad(), null); assertEquals(children[2].findDownQuad(), children[3]); @@ -54,6 +56,7 @@ public void testFindDownQuad() { @Test public void testFindLeftQuad() { + assertEquals(parentTerrainQuad.findLeftQuad(), null); assertEquals(children[0].findLeftQuad(), null); assertEquals(children[1].findLeftQuad(), null); assertEquals(children[2].findLeftQuad(), children[0]); @@ -62,6 +65,7 @@ public void testFindLeftQuad() { @Test public void testFindTopQuad() { + assertEquals(parentTerrainQuad.findTopQuad(), null); assertEquals(children[0].findTopQuad(), null); assertEquals(children[1].findTopQuad(), children[0]); assertEquals(children[2].findTopQuad(), null); From e5f5b41daa3f622d38e7da923b97b5e355e0e544 Mon Sep 17 00:00:00 2001 From: Alexander Grooff Date: Wed, 16 Mar 2016 13:55:33 +0100 Subject: [PATCH 4/7] Tests for all children of root for findRightQuad --- .../java/com/jme3/terrain/geomipmap/TerrainQuadTest.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java index ef81661992..5125b92757 100644 --- a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java +++ b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java @@ -91,4 +91,12 @@ public void testGetQuad() { assertEquals(parentTerrainQuad.getQuad(4), children[3]); assertEquals(parentTerrainQuad.getQuad(5), null); } + + @Test + public void testFindRightQuad() { + assertEquals(children[0].findRightQuad(), children[2]); + assertEquals(children[1].findRightQuad(), children[3]); + assertEquals(children[2].findRightQuad(), null); + assertEquals(children[3].findRightQuad(), null); + } } From a4ef98f8d7892bceddd49244031f1096a6eb45cb Mon Sep 17 00:00:00 2001 From: Alexander Grooff Date: Wed, 16 Mar 2016 14:14:23 +0100 Subject: [PATCH 5/7] Added tests for findDown, Left and Top quad --- .../terrain/geomipmap/TerrainQuadTest.java | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java index 5125b92757..07169557e4 100644 --- a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java +++ b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java @@ -99,4 +99,28 @@ public void testFindRightQuad() { assertEquals(children[2].findRightQuad(), null); assertEquals(children[3].findRightQuad(), null); } + + @Test + public void testFindDownQuad() { + assertEquals(children[0].findDownQuad(), children[1]); + assertEquals(children[1].findDownQuad(), null); + assertEquals(children[2].findDownQuad(), children[3]); + assertEquals(children[3].findDownQuad(), null); + } + + @Test + public void testFindLeftQuad() { + assertEquals(children[0].findLeftQuad(), null); + assertEquals(children[1].findLeftQuad(), null); + assertEquals(children[2].findLeftQuad(), children[0]); + assertEquals(children[3].findLeftQuad(), children[1]); + } + + @Test + public void testFindTopQuad() { + assertEquals(children[0].findTopQuad(), null); + assertEquals(children[1].findTopQuad(), children[0]); + assertEquals(children[2].findTopQuad(), null); + assertEquals(children[3].findTopQuad(), children[2]); + } } From c37003a6b45444eb5b2967b654790d878276bf5c Mon Sep 17 00:00:00 2001 From: Alexander Grooff Date: Wed, 16 Mar 2016 14:16:09 +0100 Subject: [PATCH 6/7] Added parent findQuad tests --- .../test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java index 07169557e4..c9efe91c0e 100644 --- a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java +++ b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java @@ -94,6 +94,7 @@ public void testGetQuad() { @Test public void testFindRightQuad() { + assertEquals(parentTerrainQuad.findRightQuad(), null); assertEquals(children[0].findRightQuad(), children[2]); assertEquals(children[1].findRightQuad(), children[3]); assertEquals(children[2].findRightQuad(), null); @@ -102,6 +103,7 @@ public void testFindRightQuad() { @Test public void testFindDownQuad() { + assertEquals(parentTerrainQuad.findDownQuad(), null); assertEquals(children[0].findDownQuad(), children[1]); assertEquals(children[1].findDownQuad(), null); assertEquals(children[2].findDownQuad(), children[3]); @@ -110,6 +112,7 @@ public void testFindDownQuad() { @Test public void testFindLeftQuad() { + assertEquals(parentTerrainQuad.findLeftQuad(), null); assertEquals(children[0].findLeftQuad(), null); assertEquals(children[1].findLeftQuad(), null); assertEquals(children[2].findLeftQuad(), children[0]); @@ -118,6 +121,7 @@ public void testFindLeftQuad() { @Test public void testFindTopQuad() { + assertEquals(parentTerrainQuad.findTopQuad(), null); assertEquals(children[0].findTopQuad(), null); assertEquals(children[1].findTopQuad(), children[0]); assertEquals(children[2].findTopQuad(), null); From 4b2538a748049f0e362d3adab69e45042b955d37 Mon Sep 17 00:00:00 2001 From: Alexander Grooff Date: Wed, 16 Mar 2016 18:21:57 +0100 Subject: [PATCH 7/7] Changed tests to cover everything except useFinder lines --- .../terrain/geomipmap/TerrainQuadTest.java | 84 ++++++++++++++----- 1 file changed, 64 insertions(+), 20 deletions(-) diff --git a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java index c9efe91c0e..c87e1323c4 100644 --- a/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java +++ b/jme3-terrain/src/test/java/com/jme3/terrain/geomipmap/TerrainQuadTest.java @@ -94,37 +94,81 @@ public void testGetQuad() { @Test public void testFindRightQuad() { - assertEquals(parentTerrainQuad.findRightQuad(), null); - assertEquals(children[0].findRightQuad(), children[2]); - assertEquals(children[1].findRightQuad(), children[3]); - assertEquals(children[2].findRightQuad(), null); - assertEquals(children[3].findRightQuad(), null); + FakeTerrainQuad root = (FakeTerrainQuad)createNestedQuad(3); + FakeTerrainQuad topLeftChild = (FakeTerrainQuad)root.getQuad(1); + FakeTerrainQuad topRight = (FakeTerrainQuad)root.getQuad(3); + + assertEquals(root.findRightQuad(), null); + assertEquals(topLeftChild.findRightQuad(), topRight); // Confirm position of two parent quads + + // Check quad children of parent + assertEquals(topLeftChild.getQuad(1).findRightQuad(), topLeftChild.getQuad(3)); + assertEquals(topLeftChild.getQuad(2).findRightQuad(), topLeftChild.getQuad(4)); + assertEquals(topLeftChild.getQuad(3).findRightQuad(), topRight.getQuad(1)); + assertEquals(topLeftChild.getQuad(4).findRightQuad(), topRight.getQuad(2)); + + // Check non-existing neighbour quads + assertEquals(topRight.getQuad(3).findRightQuad(), null); + assertEquals(topRight.getQuad(4).findRightQuad(), null); } @Test public void testFindDownQuad() { - assertEquals(parentTerrainQuad.findDownQuad(), null); - assertEquals(children[0].findDownQuad(), children[1]); - assertEquals(children[1].findDownQuad(), null); - assertEquals(children[2].findDownQuad(), children[3]); - assertEquals(children[3].findDownQuad(), null); + FakeTerrainQuad root = (FakeTerrainQuad)createNestedQuad(3); + FakeTerrainQuad topLeftChild = (FakeTerrainQuad)root.getQuad(1); + FakeTerrainQuad downLeftChild = (FakeTerrainQuad)root.getQuad(2); + + assertEquals(root.findDownQuad(), null); + assertEquals(topLeftChild.findDownQuad(), downLeftChild); // Confirm position of two parent quads + + // Check quad children of parent + assertEquals(topLeftChild.getQuad(1).findDownQuad(), topLeftChild.getQuad(2)); + assertEquals(topLeftChild.getQuad(2).findDownQuad(), downLeftChild.getQuad(1)); + assertEquals(topLeftChild.getQuad(3).findDownQuad(), topLeftChild.getQuad(4)); + assertEquals(topLeftChild.getQuad(4).findDownQuad(), downLeftChild.getQuad(3)); + + // Check non-existing neighbour quads + assertEquals(downLeftChild.getQuad(2).findDownQuad(), null); + assertEquals(downLeftChild.getQuad(4).findDownQuad(), null); } @Test public void testFindLeftQuad() { - assertEquals(parentTerrainQuad.findLeftQuad(), null); - assertEquals(children[0].findLeftQuad(), null); - assertEquals(children[1].findLeftQuad(), null); - assertEquals(children[2].findLeftQuad(), children[0]); - assertEquals(children[3].findLeftQuad(), children[1]); + FakeTerrainQuad root = (FakeTerrainQuad)createNestedQuad(3); + FakeTerrainQuad topLeftChild = (FakeTerrainQuad)root.getQuad(1); + FakeTerrainQuad topRightChild = (FakeTerrainQuad)root.getQuad(3); + + assertEquals(root.findLeftQuad(), null); + assertEquals(topRightChild.findLeftQuad(), topLeftChild); // Confirm position of two parent quads + + // Check quad children of parent + assertEquals(topRightChild.getQuad(1).findLeftQuad(), topLeftChild.getQuad(3)); + assertEquals(topRightChild.getQuad(2).findLeftQuad(), topLeftChild.getQuad(4)); + assertEquals(topRightChild.getQuad(3).findLeftQuad(), topRightChild.getQuad(1)); + assertEquals(topRightChild.getQuad(4).findLeftQuad(), topRightChild.getQuad(2)); + + // Check non-existing neighbour quads + assertEquals(topLeftChild.getQuad(1).findLeftQuad(), null); + assertEquals(topLeftChild.getQuad(2).findLeftQuad(), null); } @Test public void testFindTopQuad() { - assertEquals(parentTerrainQuad.findTopQuad(), null); - assertEquals(children[0].findTopQuad(), null); - assertEquals(children[1].findTopQuad(), children[0]); - assertEquals(children[2].findTopQuad(), null); - assertEquals(children[3].findTopQuad(), children[2]); + FakeTerrainQuad root = (FakeTerrainQuad)createNestedQuad(3); + FakeTerrainQuad topLeftChild = (FakeTerrainQuad)root.getQuad(1); + FakeTerrainQuad downLeftChild = (FakeTerrainQuad)root.getQuad(2); + + assertEquals(root.findTopQuad(), null); + assertEquals(downLeftChild.findTopQuad(), topLeftChild); // Confirm position of two parent quads + + // Check quad children of parent + assertEquals(downLeftChild.getQuad(1).findTopQuad(), topLeftChild.getQuad(2)); + assertEquals(downLeftChild.getQuad(2).findTopQuad(), downLeftChild.getQuad(1)); + assertEquals(downLeftChild.getQuad(3).findTopQuad(), topLeftChild.getQuad(4)); + assertEquals(downLeftChild.getQuad(4).findTopQuad(), downLeftChild.getQuad(3)); + + // Check non-existing neighbour quads + assertEquals(topLeftChild.getQuad(1).findTopQuad(), null); + assertEquals(topLeftChild.getQuad(3).findTopQuad(), null); } }