### Question:
GeoNamesServiceImpl implements GeoNamesService { private LatLng getCentroid(String geoNameTermOrLocale) throws IOException { LatLng point; if (StringUtils.startsWith(geoNameTermOrLocale, GEONAMES.getIdPrefix())) { point = getCentroidForGeoNameTerm(geoNameTermOrLocale); } else { point = getCentroidForLocale(geoNameTermOrLocale); } if (point == null) { if (!IGNORED_LOCALES.contains(geoNameTermOrLocale)) { LOG.warn("failed find (lat,lng) for term/locale [" + geoNameTermOrLocale + "]"); } } else { pointCache.put(geoNameTermOrLocale, point); } return point; }  @Override boolean hasTermForLocale(String locality); @Override LatLng findLatLng(String geoNameTermOrLocale); static Long parseGeoId(String idString); LatLng getCentroid(Long id); static final TermImpl GEO_TERM_EARTH; }### Answer:
@Test public void retrieveAnyGeoNamesId() throws IOException { LatLng point = new GeoNamesServiceImpl().getCentroid(2164089L); assertThat(point, is(notNullValue())); }
@Test public void retrieveAnyGeoNamesIdYugoslavia() throws IOException { LatLng point = new GeoNamesServiceImpl().getCentroid(7500737L); assertThat(point.getLat(), is(44.0d)); assertThat(point.getLng(), is(19.75)); }