package cgeo.geocaching.connector; import static org.assertj.core.api.Java6Assertions.assertThat; import java.util.Set; import junit.framework.TestCase; public class WaymarkingConnectorTest extends TestCase { private static IConnector getWaymarkingConnector() { final IConnector wmConnector = ConnectorFactory.getConnector("WM1234"); assertThat(wmConnector).isNotNull(); return wmConnector; } public static void testGetGeocodeFromUrl() { assertThat(ConnectorFactory.getGeocodeFromURL("http://coord.info/WM1234")).isEqualTo("WM1234"); assertThat(ConnectorFactory.getGeocodeFromURL("http://www.waymarking.com/waymarks/WMNCDT_American_Legion_Flagpole_1983_University_of_Oregon")).isEqualTo("WMNCDT"); final IConnector wmConnector = getWaymarkingConnector(); assertThat(wmConnector.getGeocodeFromUrl("http://coord.info/WM1234")).isEqualTo("WM1234"); assertThat(wmConnector.getGeocodeFromUrl("http://www.waymarking.com/waymarks/WMNCDT_American_Legion_Flagpole_1983_University_of_Oregon")).isEqualTo("WMNCDT"); assertThat(wmConnector.getGeocodeFromUrl("http://coord.info/GC12ABC")).isNull(); assertThat(wmConnector.getGeocodeFromUrl("http://coord.info/TB1234")).isNull(); } public static void testCanHandle() { final IConnector wmConnector = getWaymarkingConnector(); assertThat(wmConnector.canHandle("WM1234")).isTrue(); assertThat(wmConnector.canHandle("GC1234")).isFalse(); } public static void testHandledGeocodes() { final Set<String> geocodes = ConnectorFactoryTest.getGeocodeSample(); assertThat(getWaymarkingConnector().handledGeocodes(geocodes)).containsOnly("WM1234", "WM5678"); } }