@@ -0,0 +1,1328 @@
+package dev.osm.mapsplit;%0A%0Aimport static org.junit.Assert.assertEquals;%0A%0Aimport java.util.HashSet;%0Aimport java.util.List;%0Aimport java.util.Set;%0A%0Aimport org.junit.Test;%0A%0Apublic class ArrayMapTest %7B%0A%0A    @Test%0A    public void testPutUpdateAndRetrieve() %7B%0A%0A        var map = new ArrayMap(100);%0A%0A        int tileX = 1245;%0A        int tileY = 99;%0A%0A        /* put some entries into the tile and its eastern neighbor */%0A%0A        map.put(42, tileX , tileY, OsmMap.NEIGHBOURS_NONE);%0A        map.put(0, tileX, tileY, OsmMap.NEIGHBOURS_EAST);%0A        map.put(100, tileX + 1, tileY, OsmMap.NEIGHBOURS_NONE);%0A%0A        /* retrieve the values and tile lists from the map */%0A%0A        long value42 = map.get(42);%0A        assertEquals(tileX, map.tileX(value42));%0A        assertEquals(tileY, map.tileY(value42));%0A%0A        assertEquals(List.of(tileX %3C%3C 16 %7C tileY), map.getAllTiles(42));%0A        assertEquals(2, map.getAllTiles(0).size());%0A%0A        /* update one of the values and check again */%0A%0A        map.update(42, List.of(%0A                map.createValue(tileX + 1, tileY, OsmMap.NEIGHBOURS_NONE),%0A                map.createValue(tileX, tileY + 1, OsmMap.NEIGHBOURS_NONE)));%0A%0A        assertEquals(3, map.getAllTiles(42).size());%0A%0A        /* check the keys */%0A%0A        assertEquals(Set.of(0l, 42l, 100l), new HashSet%3C%3E(map.keys()));%0A%0A    %7D%0A%0A%7D%0A

Add a basic unit test for the ArrayMap