aboutsummaryrefslogtreecommitdiffstats
path: root/tests/src
diff options
context:
space:
mode:
Diffstat (limited to 'tests/src')
-rw-r--r--tests/src/cgeo/geocaching/TrackableTest.java25
-rw-r--r--tests/src/cgeo/geocaching/connector/gc/GCConnectorTest.java9
-rw-r--r--tests/src/cgeo/geocaching/connector/gc/GCParserTest.java10
-rw-r--r--tests/src/cgeo/geocaching/connector/trackable/GeokretyConnectorTest.java14
-rw-r--r--tests/src/cgeo/geocaching/connector/trackable/TravelBugConnectorTest.java24
5 files changed, 79 insertions, 3 deletions
diff --git a/tests/src/cgeo/geocaching/TrackableTest.java b/tests/src/cgeo/geocaching/TrackableTest.java
index 2852a4d..7d3fd5c 100644
--- a/tests/src/cgeo/geocaching/TrackableTest.java
+++ b/tests/src/cgeo/geocaching/TrackableTest.java
@@ -5,8 +5,7 @@ import android.test.AndroidTestCase;
public class TrackableTest extends AndroidTestCase {
public static void testGetGeocode() {
- final Trackable trackable = new Trackable();
- trackable.setGeocode("tb1234");
+ final Trackable trackable = createTrackable("tb1234");
assertEquals("TB1234", trackable.getGeocode());
}
@@ -15,4 +14,26 @@ public class TrackableTest extends AndroidTestCase {
trackable.setLogs(null);
assertNotNull("Trackable logs must not be null!", trackable.getLogs());
}
+
+ public static void testTrackableUrl() {
+ final Trackable trackable = createTrackable("TB1234");
+ assertEquals("http://www.geocaching.com//track/details.aspx?tracker=TB1234", trackable.getUrl());
+ }
+
+ public static void testGeokretUrl() {
+ Trackable geokret = createTrackable("GK82A2");
+ assertEquals("http://geokrety.org/konkret.php?id=33442", geokret.getUrl());
+ }
+
+ public static void testLoggable() {
+ assertTrue(createTrackable("TB1234").isLoggable());
+ assertFalse(createTrackable("GK1234").isLoggable());
+ }
+
+ private static Trackable createTrackable(String geocode) {
+ final Trackable trackable = new Trackable();
+ trackable.setGeocode(geocode);
+ return trackable;
+ }
+
}
diff --git a/tests/src/cgeo/geocaching/connector/gc/GCConnectorTest.java b/tests/src/cgeo/geocaching/connector/gc/GCConnectorTest.java
index 94cc067..8d3d840 100644
--- a/tests/src/cgeo/geocaching/connector/gc/GCConnectorTest.java
+++ b/tests/src/cgeo/geocaching/connector/gc/GCConnectorTest.java
@@ -3,6 +3,7 @@ package cgeo.geocaching.connector.gc;
import cgeo.geocaching.SearchResult;
import cgeo.geocaching.Settings;
import cgeo.geocaching.connector.ConnectorFactory;
+import cgeo.geocaching.connector.trackable.TravelBugConnector;
import cgeo.geocaching.enumerations.CacheType;
import cgeo.geocaching.geopoint.Geopoint;
import cgeo.geocaching.geopoint.Viewport;
@@ -46,10 +47,16 @@ public class GCConnectorTest extends AbstractResourceInstrumentationTestCase {
public static void testCanHandle() {
assertTrue(GCConnector.getInstance().canHandle("GC2MEGA"));
- assertTrue(GCConnector.getInstance().canHandle("TB3F651"));
assertFalse(GCConnector.getInstance().canHandle("OXZZZZZ"));
}
+ /**
+ * functionality moved to {@link TravelBugConnector}
+ */
+ public static void testCanNotHandleTrackablesAnymore() {
+ assertFalse(GCConnector.getInstance().canHandle("TB3F651"));
+ }
+
public static void testBaseCodings() {
assertEquals(2045702, GCConstants.gccodeToGCId("GC2MEGA"));
}
diff --git a/tests/src/cgeo/geocaching/connector/gc/GCParserTest.java b/tests/src/cgeo/geocaching/connector/gc/GCParserTest.java
index 9bc2caf..45eee3b 100644
--- a/tests/src/cgeo/geocaching/connector/gc/GCParserTest.java
+++ b/tests/src/cgeo/geocaching/connector/gc/GCParserTest.java
@@ -4,7 +4,9 @@ import cgeo.geocaching.Geocache;
import cgeo.geocaching.Image;
import cgeo.geocaching.SearchResult;
import cgeo.geocaching.Settings;
+import cgeo.geocaching.Trackable;
import cgeo.geocaching.Waypoint;
+import cgeo.geocaching.cgeoapplication;
import cgeo.geocaching.enumerations.LoadFlags;
import cgeo.geocaching.enumerations.StatusCode;
import cgeo.geocaching.enumerations.WaypointType;
@@ -213,4 +215,12 @@ public class GCParserTest extends AbstractResourceInstrumentationTestCase {
return result.getFirstCacheFromResult(LoadFlags.LOAD_CACHE_OR_DB);
}
+ public void testTrackableNotActivated() {
+ final String page = getFileContent(R.raw.tb123e_html);
+ final Trackable trackable = GCParser.parseTrackable(page, "TB123E");
+ assertNotNull(trackable);
+ assertEquals("TB123E", trackable.getGeocode());
+ final String expectedDetails = cgeoapplication.getInstance().getString(cgeo.geocaching.R.string.trackable_not_activated);
+ assertEquals(expectedDetails, trackable.getDetails());
+ }
}
diff --git a/tests/src/cgeo/geocaching/connector/trackable/GeokretyConnectorTest.java b/tests/src/cgeo/geocaching/connector/trackable/GeokretyConnectorTest.java
new file mode 100644
index 0000000..f08fb6b
--- /dev/null
+++ b/tests/src/cgeo/geocaching/connector/trackable/GeokretyConnectorTest.java
@@ -0,0 +1,14 @@
+package cgeo.geocaching.connector.trackable;
+
+import junit.framework.TestCase;
+
+public class GeokretyConnectorTest extends TestCase {
+
+ public static void testCanHandleTrackable() {
+ assertTrue(new GeokretyConnector().canHandleTrackable("GK82A2"));
+ assertFalse(new GeokretyConnector().canHandleTrackable("GKXYZ1")); // non hex
+ assertFalse(new GeokretyConnector().canHandleTrackable("TB1234"));
+ assertFalse(new GeokretyConnector().canHandleTrackable("UNKNOWN"));
+ }
+
+}
diff --git a/tests/src/cgeo/geocaching/connector/trackable/TravelBugConnectorTest.java b/tests/src/cgeo/geocaching/connector/trackable/TravelBugConnectorTest.java
new file mode 100644
index 0000000..7772e29
--- /dev/null
+++ b/tests/src/cgeo/geocaching/connector/trackable/TravelBugConnectorTest.java
@@ -0,0 +1,24 @@
+package cgeo.geocaching.connector.trackable;
+
+import cgeo.geocaching.Trackable;
+
+import junit.framework.TestCase;
+
+public class TravelBugConnectorTest extends TestCase {
+
+ public static void testCanHandleTrackable() {
+ assertTrue(new TravelBugConnector().canHandleTrackable("TB1234"));
+ assertTrue(new TravelBugConnector().canHandleTrackable("TB1"));
+ assertTrue(new TravelBugConnector().canHandleTrackable("TB123F"));
+ assertTrue(new TravelBugConnector().canHandleTrackable("TB123Z"));
+ assertFalse(new TravelBugConnector().canHandleTrackable("GK1234"));
+ assertFalse(new TravelBugConnector().canHandleTrackable("UNKNOWN"));
+ }
+
+ public static void testGetUrl() {
+ final Trackable trackable = new Trackable();
+ trackable.setGeocode("TB2345");
+ assertEquals("http://www.geocaching.com//track/details.aspx?tracker=TB2345", new TravelBugConnector().getUrl(trackable));
+ }
+
+}