public void TestValidFeed() { // create the reader. var reader = new GTFSReader <GTFSFeed>(); var source = GTFSAssert.BuildSource(); // execute the reader. var feed = reader.Read(source); // validate. Assert.IsTrue(GTFSFeedValidation.Validate(feed)); }
public void TestMissingAgency() { // create the reader. var reader = new GTFSReader <GTFSFeed>(); var source = GTFSAssert.BuildSource(); // execute the reader. var feed = reader.Read(source); // remove. feed.Agencies.Remove("DTA"); // validate. Assert.IsFalse(GTFSFeedValidation.Validate(feed)); }
public void TestMissingStopTime() { // create the reader. var reader = new GTFSReader <GTFSFeed>(); var source = GTFSAssert.BuildSource(); // execute the reader. var feed = reader.Read(source); // remove. (feed.StopTimes.Get() as List <StopTime>)[2].StopSequence = 1024; // validate. Assert.IsFalse(GTFSFeedValidation.Validate(feed)); }
public void TestNullAgency() { // create the reader. var reader = new GTFSReader <GTFSFeed>(); var source = GTFSAssert.BuildSource(); // execute the reader. var feed = reader.Read(source); // remove agency link. Assert.IsTrue(feed.Routes.Any()); feed.Routes.First().AgencyId = null; // validate. Assert.IsTrue(GTFSFeedValidation.Validate(feed)); }
public void TestUnknownAgency() { // create the reader. var reader = new GTFSReader <GTFSFeed>(); var source = GTFSAssert.BuildSource(); // execute the reader. var feed = reader.Read(source); // change to an unknown agency. const string UnknownAgency = "unknown agency"; Assert.IsTrue(feed.Agencies.All(x => x.Id != UnknownAgency)); Assert.IsTrue(feed.Routes.Any()); feed.Routes.First().AgencyId = UnknownAgency; // validate. Assert.IsFalse(GTFSFeedValidation.Validate(feed)); }
public void TestFilterNoStops() { // create the reader. var reader = new GTFSReader <GTFSFeed>(); var source = GTFSAssert.BuildSource(); // execute the reader. var feed = reader.Read(source); // create the filter. var filter = new GTFSFeedStopsFilter((x) => { return(true); }); // execute filter. var filtered = filter.Filter(feed); Assert.IsTrue(GTFSFeedValidation.Validate(filtered)); GTFSAssert.AreEqual(feed, filtered); }
public void TestFilterOneStop() { // create the reader. var reader = new GTFSReader <GTFSFeed>(); var source = GTFSAssert.BuildSource(); // execute the reader. var feed = reader.Read(source); // create list of object id's that should remain after filtering. var expectedTripIds = new string[] { "AB1", "AB2", "BFC1", "BFC2" }; var expectedStopIds = new string[] { "BULLFROG", "BEATTY_AIRPORT", "FUR_CREEK_RES" }; var expectedRouteIds = new string[] { "AB", "BFC" }; var expectedShapeIds = new string[] { "shape_1", "shape_2", "shape_6", "shape_7" }; // create the filter. var filter = new GTFSFeedStopsFilter((x) => { return(x.Id == "BULLFROG"); }); // execute filter. var filtered = filter.Filter(feed); Assert.IsTrue(GTFSFeedValidation.Validate(filtered)); // test for trips/stops. foreach (var stop in filtered.Stops) { Assert.Contains(stop.Id, expectedStopIds); } foreach (var trip in filtered.Trips) { Assert.Contains(trip.Id, expectedTripIds); } foreach (var route in filtered.Routes) { Assert.Contains(route.Id, expectedRouteIds); } foreach (var shape in filtered.Shapes) { Assert.Contains(shape.Id, expectedShapeIds); } // create the filter. var stopIds = new HashSet <string>(); stopIds.Add("BULLFROG"); filter = new GTFSFeedStopsFilter(stopIds); // execute filter. filtered = filter.Filter(feed); Assert.IsTrue(GTFSFeedValidation.Validate(filtered)); // test for trips/stops. foreach (var stop in filtered.Stops) { Assert.Contains(stop.Id, expectedStopIds); } foreach (var trip in filtered.Trips) { Assert.Contains(trip.Id, expectedTripIds); } foreach (var route in filtered.Routes) { Assert.Contains(route.Id, expectedRouteIds); } foreach (var shape in filtered.Shapes) { Assert.Contains(shape.Id, expectedShapeIds); } }