aboutsummaryrefslogtreecommitdiff
path: root/test/org/traccar/helper/LocationTreeTest.java
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2016-04-11 15:23:49 +1200
committerAnton Tananaev <anton.tananaev@gmail.com>2016-04-11 15:23:49 +1200
commit55d7ed16a9760e9582b6b8b838b2f97922638b18 (patch)
treedefa5b6d1b727f4c7cf59688a3e4d3543918ace5 /test/org/traccar/helper/LocationTreeTest.java
parent6a86eeb75c208e06abe3c82897338413a1c67fc2 (diff)
downloadtrackermap-server-55d7ed16a9760e9582b6b8b838b2f97922638b18.tar.gz
trackermap-server-55d7ed16a9760e9582b6b8b838b2f97922638b18.tar.bz2
trackermap-server-55d7ed16a9760e9582b6b8b838b2f97922638b18.zip
Implement location search tree
Diffstat (limited to 'test/org/traccar/helper/LocationTreeTest.java')
-rw-r--r--test/org/traccar/helper/LocationTreeTest.java29
1 files changed, 29 insertions, 0 deletions
diff --git a/test/org/traccar/helper/LocationTreeTest.java b/test/org/traccar/helper/LocationTreeTest.java
new file mode 100644
index 000000000..afbbbc94c
--- /dev/null
+++ b/test/org/traccar/helper/LocationTreeTest.java
@@ -0,0 +1,29 @@
+package org.traccar.helper;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class LocationTreeTest {
+
+ @Test
+ public void testLocationTree() {
+
+ List<LocationTree.Item> items = new ArrayList<>();
+ items.add(new LocationTree.Item(1, 1, "a"));
+ items.add(new LocationTree.Item(3, 2, "b"));
+ items.add(new LocationTree.Item(1, 3, "c"));
+ items.add(new LocationTree.Item(4, 3, "d"));
+
+ LocationTree tree = new LocationTree(items);
+
+ Assert.assertEquals("a", tree.findNearest(new LocationTree.Item(1f, 1f)).getData());
+ Assert.assertEquals("d", tree.findNearest(new LocationTree.Item(10f, 10f)).getData());
+ Assert.assertEquals("c", tree.findNearest(new LocationTree.Item(1f, 2.5f)).getData());
+ Assert.assertEquals("a", tree.findNearest(new LocationTree.Item(1.5f, 1.5f)).getData());
+
+ }
+
+}