diff options
Diffstat (limited to 'tests/src/cgeo/geocaching/GeocacheTest.java')
| -rw-r--r-- | tests/src/cgeo/geocaching/GeocacheTest.java | 68 |
1 files changed, 38 insertions, 30 deletions
diff --git a/tests/src/cgeo/geocaching/GeocacheTest.java b/tests/src/cgeo/geocaching/GeocacheTest.java index 91497f1..5850c4f 100644 --- a/tests/src/cgeo/geocaching/GeocacheTest.java +++ b/tests/src/cgeo/geocaching/GeocacheTest.java @@ -1,16 +1,14 @@ package cgeo.geocaching; +import cgeo.CGeoTestCase; import cgeo.geocaching.enumerations.CacheType; import cgeo.geocaching.geopoint.Geopoint; -import android.os.Handler; -import android.test.AndroidTestCase; - import java.util.ArrayList; import java.util.Date; import java.util.List; -public class GeocacheTest extends AndroidTestCase { +public class GeocacheTest extends CGeoTestCase { final static private class MockedEventCache extends Geocache { public MockedEventCache(final Date date) { @@ -52,31 +50,41 @@ public class GeocacheTest extends AndroidTestCase { assertEquals("GC1234", cache.getGeocode()); } - public static void testUpdateWaypointFromNote() { + public void testUpdateWaypointFromNote() { assertWaypointsParsed("Test N51 13.888 E007 03.444", 1); } - public static void testUpdateWaypointsFromNote() { + public void testUpdateWaypointsFromNote() { assertWaypointsParsed("Test N51 13.888 E007 03.444 Test N51 13.233 E007 03.444 Test N51 09.123 E007 03.444", 3); } - private static void assertWaypointsParsed(String note, int expectedWaypoints) { - Geocache cache = new Geocache(); - cache.setGeocode("Test" + System.nanoTime()); - cache.setWaypoints(new ArrayList<Waypoint>(), false); - for (int i = 0; i < 2; i++) { - cache.setPersonalNote(note); - cache.parseWaypointsFromNote(); - final List<Waypoint> waypoints = cache.getWaypoints(); - assertNotNull(waypoints); - assertEquals(expectedWaypoints, waypoints.size()); - final Waypoint waypoint = waypoints.get(0); - assertEquals(new Geopoint("N51 13.888 E007 03.444"), waypoint.getCoords()); - // assertEquals("Test", waypoint.getNote()); - assertEquals(cgeoapplication.getInstance().getString(R.string.cache_personal_note) + " 1", waypoint.getName()); - cache.store(StoredList.TEMPORARY_LIST_ID, null); + private void assertWaypointsParsed(String note, int expectedWaypoints) { + + recordMapStoreFlags(); + + try { + setMapStoreFlags(false, false); + + Geocache cache = new Geocache(); + final String geocode = "Test" + System.nanoTime(); + cache.setGeocode(geocode); + cache.setWaypoints(new ArrayList<Waypoint>(), false); + for (int i = 0; i < 2; i++) { + cache.setPersonalNote(note); + cache.parseWaypointsFromNote(); + final List<Waypoint> waypoints = cache.getWaypoints(); + assertNotNull(waypoints); + assertEquals(expectedWaypoints, waypoints.size()); + final Waypoint waypoint = waypoints.get(0); + assertEquals(new Geopoint("N51 13.888 E007 03.444"), waypoint.getCoords()); + // assertEquals("Test", waypoint.getNote()); + assertEquals(cgeoapplication.getInstance().getString(R.string.cache_personal_note) + " 1", waypoint.getName()); + cache.store(StoredList.TEMPORARY_LIST_ID, null); + } + removeCacheCompletely(geocode); + } finally { + restoreMapStoreFlags(); } - cache.drop(new Handler()); } public static void testMergeDownloadedStored() { @@ -118,7 +126,7 @@ public class GeocacheTest extends AndroidTestCase { Geocache livemap = new Geocache(); livemap.setGeocode("GC12345"); - livemap.setType(CacheType.MULTI); + livemap.setType(CacheType.MULTI, 12); livemap.setCoords(new Geopoint(41.0, 9.0), 12); livemap.gatherMissingFrom(stored); @@ -128,7 +136,7 @@ public class GeocacheTest extends AndroidTestCase { assertEquals("Type not merged correctly", CacheType.TRADITIONAL, livemap.getType()); assertEquals("Longitude not merged correctly", 8.0, livemap.getCoords().getLongitude(), 0.1); assertEquals("Latitude not merged correctly", 40.0, livemap.getCoords().getLatitude(), 0.1); - assertEquals("Zoomlevel not merged correctly", stored.getZoomLevel(), livemap.getZoomLevel()); + assertEquals("Zoomlevel not merged correctly", stored.getCoordZoomLevel(), livemap.getCoordZoomLevel()); } public static void testMergeLivemapZoomin() { @@ -148,19 +156,19 @@ public class GeocacheTest extends AndroidTestCase { assertEquals("Type not merged correctly", CacheType.MULTI, livemapSecond.getType()); assertEquals("Longitude not merged correctly", 9.0, livemapSecond.getCoords().getLongitude(), 0.1); assertEquals("Latitude not merged correctly", 41.0, livemapSecond.getCoords().getLatitude(), 0.1); - assertEquals("Zoomlevel not merged correctly", 12, livemapSecond.getZoomLevel()); + assertEquals("Zoomlevel not merged correctly", 12, livemapSecond.getCoordZoomLevel()); } public static void testMergeLivemapZoomout() { Geocache livemapFirst = new Geocache(); livemapFirst.setGeocode("GC12345"); - livemapFirst.setType(CacheType.TRADITIONAL); + livemapFirst.setType(CacheType.TRADITIONAL, 12); livemapFirst.setCoords(new Geopoint(40.0, 8.0), 12); Geocache livemapSecond = new Geocache(); livemapSecond.setGeocode("GC12345"); - livemapSecond.setType(CacheType.MULTI); + livemapSecond.setType(CacheType.MULTI, 11); livemapSecond.setCoords(new Geopoint(41.0, 9.0), 11); livemapSecond.gatherMissingFrom(livemapFirst); @@ -168,7 +176,7 @@ public class GeocacheTest extends AndroidTestCase { assertEquals("Type not merged correctly", CacheType.TRADITIONAL, livemapSecond.getType()); assertEquals("Longitude not merged correctly", 8.0, livemapSecond.getCoords().getLongitude(), 0.1); assertEquals("Latitude not merged correctly", 40.0, livemapSecond.getCoords().getLatitude(), 0.1); - assertEquals("Zoomlevel not merged correctly", 12, livemapSecond.getZoomLevel()); + assertEquals("Zoomlevel not merged correctly", 12, livemapSecond.getCoordZoomLevel()); } public static void testMergePopupLivemap() { @@ -188,7 +196,7 @@ public class GeocacheTest extends AndroidTestCase { assertEquals("Longitude not merged correctly", 8.0, popup.getCoords().getLongitude(), 0.1); assertEquals("Latitude not merged correctly", 40.0, popup.getCoords().getLatitude(), 0.1); assertTrue("Found not merged correctly", popup.isFound()); - assertEquals("Zoomlevel not merged correctly", 12, popup.getZoomLevel()); + assertEquals("Zoomlevel not merged correctly", 12, popup.getCoordZoomLevel()); } public static void testMergeLivemapBMSearched() { @@ -204,7 +212,7 @@ public class GeocacheTest extends AndroidTestCase { assertEquals("Longitude not merged correctly", 8.0, livemap.getCoords().getLongitude(), 0.1); assertEquals("Latitude not merged correctly", 40.0, livemap.getCoords().getLatitude(), 0.1); - assertEquals("Zoomlevel not merged correctly", 12, livemap.getZoomLevel()); + assertEquals("Zoomlevel not merged correctly", 12, livemap.getCoordZoomLevel()); } public static void testNameForSorting() { |
