(no commit message)
[utils] / gps / src / test / java / org / wamblee / gpx / GpxParserTest.java
index 132b37bdc0e4f7949b5889ff9fd6282afbe0ab11..50933699386890fe6916d0c615c43c1ea69f9065 100644 (file)
@@ -1,13 +1,15 @@
 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;
 
-import junit.framework.TestCase;
-
 public class GpxParserTest extends TestCase {
 
        /**
@@ -15,7 +17,31 @@ public class GpxParserTest extends TestCase {
         */
        public void testNoJoy() throws IOException, XMLException { 
                GpxParser parser = new GpxParser();
-               Track track = parser.parse(new ClassPathResource("nojoy.gpx").getInputStream());
+               Track track = parser.parse("nojoy.gpx", new ClassPathResource("nojoy.gpx").getInputStream());
                assertEquals(468, track.size());
+               List<TrackSegment> 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<TrackSegment> 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<TrackSegment> 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());
+    }
 }