package org.wamblee.gpx; import java.io.IOException; import java.util.List; import junit.framework.TestCase; import org.wamblee.gps.track.Track; import org.wamblee.gps.track.TrackSegment; import org.wamblee.io.ClassPathResource; import org.wamblee.xml.XMLException; public class GpxParserTest extends TestCase { /** * Tests parsing of a GPS file received by Payne Freret. */ public void testNoJoy() throws IOException, XMLException { GpxParser parser = new GpxParser(); Track track = parser.parse("nojoy.gpx", new ClassPathResource("nojoy.gpx").getInputStream()); assertEquals(468, track.size()); List segments = track.getSegments(); assertEquals(1, segments.size()); assertEquals("ACTIVE LOG", segments.get(0).getDescription()); } public void testParseRoute() throws Exception { GpxParser parser = new GpxParser(); Track track = parser.parse("mh2d.route.gpx", new ClassPathResource("mh2d.route.gpx").getInputStream()); assertEquals(250, track.size()); List segments = track.getSegments(); assertEquals(1, segments.size()); assertEquals("Generated from track MTB Zaterdag 70 Km", segments.get(0).getDescription()); } public void testParseTrackWithMultipleSegments() throws Exception { GpxParser parser = new GpxParser(); String name = "bbc2009.gpx"; Track track = parser.parse(name, new ClassPathResource(name).getInputStream()); assertEquals(10870, track.size()); List segments = track.getSegments(); assertEquals(3, segments.size()); assertEquals("bbc2009 100", segments.get(0).getDescription()); assertEquals("bbc2009 55", segments.get(1).getDescription()); assertEquals("bbc2009 75", segments.get(2).getDescription()); } }