diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2016-12-31 11:41:56 +1300 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2016-12-31 11:41:56 +1300 |
commit | 679c2852e3c4987091e0b84b7e7d80a9f72964a0 (patch) | |
tree | c0fe0ab222bbd251b25e3520c5f62c68669fbaa2 /test/org/traccar/geocoder/GeocoderTest.java | |
parent | 68569c05fb4be377baed5cd0ecb1b75176d24f01 (diff) | |
download | trackermap-server-679c2852e3c4987091e0b84b7e7d80a9f72964a0.tar.gz trackermap-server-679c2852e3c4987091e0b84b7e7d80a9f72964a0.tar.bz2 trackermap-server-679c2852e3c4987091e0b84b7e7d80a9f72964a0.zip |
Add exception classes and more renames
Diffstat (limited to 'test/org/traccar/geocoder/GeocoderTest.java')
-rw-r--r-- | test/org/traccar/geocoder/GeocoderTest.java | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/test/org/traccar/geocoder/GeocoderTest.java b/test/org/traccar/geocoder/GeocoderTest.java new file mode 100644 index 000000000..012f8bacd --- /dev/null +++ b/test/org/traccar/geocoder/GeocoderTest.java @@ -0,0 +1,114 @@ +package org.traccar.geocoder; + +import org.junit.Assert; +import org.junit.Test; + +public class GeocoderTest { + + private boolean enable = false; + + @Test + public void test() throws InterruptedException { + if (enable) { + testGeocodeFarm(); + } + } + + private String address; + + private synchronized String waitAddress() { + try { + wait(5000); + return address; + } catch (InterruptedException e) { + throw new RuntimeException(e); + } + } + + private synchronized void setAddress(String address) { + this.address = address; + notifyAll(); + } + + public void testGoogle() throws InterruptedException { + Geocoder geocoder = new GoogleGeocoder(); + + geocoder.getAddress(new AddressFormat(), 37.4217550, -122.0846330, new Geocoder.ReverseGeocoderCallback() { + @Override + public void onSuccess(String address) { + setAddress(address); + } + + @Override + public void onFailure(Throwable e) { + } + }); + Assert.assertEquals("1600 Amphitheatre Pkwy, Mountain View, CA, US", waitAddress()); + } + + public void testNominatim() throws InterruptedException { + Geocoder geocoder = new NominatimGeocoder(); + + geocoder.getAddress(new AddressFormat(), 40.7337807, -73.9974401, new Geocoder.ReverseGeocoderCallback() { + @Override + public void onSuccess(String address) { + setAddress(address); + } + + @Override + public void onFailure(Throwable e) { + } + }); + Assert.assertEquals("35 West 9th Street, NYC, New York, US", waitAddress()); + } + + public void testGisgraphy() throws InterruptedException { + Geocoder geocoder = new GisgraphyGeocoder(); + + geocoder.getAddress(new AddressFormat(), 48.8530000, 2.3400000, new Geocoder.ReverseGeocoderCallback() { + @Override + public void onSuccess(String address) { + setAddress(address); + } + + @Override + public void onFailure(Throwable e) { + } + }); + Assert.assertEquals("Rue du Jardinet, Paris, FR", waitAddress()); + } + + public void testOpenCage() throws InterruptedException { + Geocoder geocoder = new OpenCageGeocoder( + "http://api.opencagedata.com/geocode/v1", "SECRET", 0); + + geocoder.getAddress(new AddressFormat(), 34.116302, -118.051519, new Geocoder.ReverseGeocoderCallback() { + @Override + public void onSuccess(String address) { + setAddress(address); + } + + @Override + public void onFailure(Throwable e) { + } + }); + Assert.assertEquals("Charleston Road, California, US", waitAddress()); + } + + public void testGeocodeFarm() throws InterruptedException { + Geocoder geocoder = new GeocodeFarmGeocoder(0); + + geocoder.getAddress(new AddressFormat(), 34.116302, -118.051519, new Geocoder.ReverseGeocoderCallback() { + @Override + public void onSuccess(String address) { + setAddress(address); + } + + @Override + public void onFailure(Throwable e) { + } + }); + Assert.assertEquals("Estrella Avenue, Arcadia, California, United States", waitAddress()); + } + +} |