public void TestGetTrackList()
        {
            // run
            string filename = Path.Combine(UnitTestHelper.TestAssetsPath, "tracks.gpx");

            using (var stream = new FileStream(filename, FileMode.Open))
            {
                var gpxFile   = new GpxDataFile(stream);
                var trackList = gpxFile.GetTrackList();

                // check
                Assert.IsTrue(trackList.Any(), "track list list must at least one track");
            }
        }
        public void TestLoadTrack()
        {
            // run
            string filename = Path.Combine(UnitTestHelper.TestAssetsPath, "tracks.gpx");

            using (var stream = new FileStream(filename, FileMode.Open))
            {
                var gpxFile = new GpxDataFile(stream);

                var track = gpxFile.LoadTrack(0);

                // check
                Assert.IsTrue(track.TrackPoints.Any(), "track points list must not be empty");
            }
        }
        public void TestLoadLocationList()
        {
            // run
            string filename = Path.Combine(UnitTestHelper.TestAssetsPath, "waypoints.gpx");

            using (var stream = new FileStream(filename, FileMode.Open))
            {
                var gpxFile = new GpxDataFile(stream);

                Assert.IsTrue(gpxFile.HasLocations(), "file must contain locations");
                var locationList = gpxFile.LoadLocationList();

                // check
                Assert.IsTrue(locationList.Any(), "loaded location list must contain locations");
            }
        }