* Test predating unit tests that was implemented to mimic navigating a
* known map of San Francisco.
*/
@Test
public void testWanderWithGeomodel() {
final Converter<String> geoModelConv = new GeoModelConv();
// Get geocell for San Francisco at Geomodel resolution 7.
long geocell = GeocellLibrary.getGeocell(SAN_FRAN, 28);
final long start = geocell;
// Wander . . .
final String sfStart = "8e62df8";
assertEquals(sfStart, geoModelConv.fromGeocell(geocell));
assertEquals(start, geocell);
// East and west to start.
geocell = GeocellLibrary.getEast(geocell);
assertEquals("8e62df9", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getEast(geocell);
assertEquals("8e62dfc", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getEast(geocell);
assertEquals("8e62dfd", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getEast(geocell);
assertEquals("8e638a8", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getEast(geocell);
assertEquals("8e638a9", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getWest(geocell);
assertEquals("8e638a8", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getWest(geocell);
assertEquals("8e62dfd", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getWest(geocell);
assertEquals("8e62dfc", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getWest(geocell);
assertEquals("8e62df9", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getWest(geocell);
assertEquals(sfStart, geoModelConv.fromGeocell(geocell));
assertEquals(start, geocell);
// North and south to start.
geocell = GeocellLibrary.getNorth(geocell);
assertEquals("8e62dfa", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getNorth(geocell);
assertEquals("8e62f50", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getNorth(geocell);
assertEquals("8e62f52", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getNorth(geocell);
assertEquals("8e62f58", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getNorth(geocell);
assertEquals("8e62f5a", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getSouth(geocell);
assertEquals("8e62f58", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getSouth(geocell);
assertEquals("8e62f52", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getSouth(geocell);
assertEquals("8e62f50", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getSouth(geocell);
assertEquals("8e62dfa", geoModelConv.fromGeocell(geocell));
geocell = GeocellLibrary.getSouth(geocell);
assertEquals(sfStart, geoModelConv.fromGeocell(geocell));
assertEquals(start, geocell);
// Wander back to start.
geocell = GeocellLibrary.getWest(geocell);
geocell = GeocellLibrary.getNorth(geocell);
geocell = GeocellLibrary.getEast(geocell);
geocell = GeocellLibrary.getEast(geocell);
geocell = GeocellLibrary.getSouth(geocell);
geocell = GeocellLibrary.getSouth(geocell);
geocell = GeocellLibrary.getWest(geocell);
geocell = GeocellLibrary.getWest(geocell);
geocell = GeocellLibrary.getNorth(geocell);
geocell = GeocellLibrary.getEast(geocell);
assertEquals(sfStart, geoModelConv.fromGeocell(geocell));
assertEquals(start, geocell);
}