use of org.onebusaway.transit_data_federation.bundle.tasks.UniqueServiceImpl in project onebusaway-application-modules by camsys.
the class RouteCollectionEntriesFactoryTest method testProcessRouteCollections.
@Test
public void testProcessRouteCollections() {
TransitGraphImpl graph = new TransitGraphImpl();
AgencyEntryImpl agency = new AgencyEntryImpl();
agency.setId("A");
graph.putAgencyEntry(agency);
graph.refreshAgencyMapping();
RouteEntryImpl routeA = new RouteEntryImpl();
routeA.setId(new AgencyAndId("A", "routeA"));
graph.putRouteEntry(routeA);
RouteEntryImpl routeB = new RouteEntryImpl();
routeB.setId(new AgencyAndId("A", "routeB"));
graph.putRouteEntry(routeB);
RouteCollectionEntriesFactory factory = new RouteCollectionEntriesFactory();
GtfsRelationalDao gtfsDao = Mockito.mock(GtfsRelationalDao.class);
factory.setGtfsDao(gtfsDao);
factory.setUniqueService(new UniqueServiceImpl());
factory.processRouteCollections(graph);
RouteCollectionEntry routeEntryA = graph.getRouteCollectionForId(routeA.getId());
assertEquals(routeA.getId(), routeEntryA.getId());
List<RouteEntry> routes = routeEntryA.getChildren();
assertEquals(1, routes.size());
assertTrue(routes.contains(routeA));
RouteCollectionEntry routeEntryB = graph.getRouteCollectionForId(routeB.getId());
assertEquals(routeB.getId(), routeEntryB.getId());
routes = routeEntryB.getChildren();
assertEquals(1, routes.size());
assertTrue(routes.contains(routeB));
List<RouteCollectionEntry> routeCollections = graph.getAllRouteCollections();
assertEquals(2, routeCollections.size());
assertTrue(routeCollections.contains(routeEntryA));
assertTrue(routeCollections.contains(routeEntryB));
routeCollections = agency.getRouteCollections();
assertEquals(2, routeCollections.size());
assertTrue(routeCollections.contains(routeEntryA));
assertTrue(routeCollections.contains(routeEntryB));
}
use of org.onebusaway.transit_data_federation.bundle.tasks.UniqueServiceImpl in project onebusaway-application-modules by camsys.
the class RouteCollectionEntriesFactoryTest method testGroupRoutesByShortName.
@Test
public void testGroupRoutesByShortName() {
TransitGraphImpl graph = new TransitGraphImpl();
AgencyEntryImpl agency = new AgencyEntryImpl();
agency.setId("A");
graph.putAgencyEntry(agency);
graph.refreshAgencyMapping();
RouteEntryImpl routeA = new RouteEntryImpl();
routeA.setId(new AgencyAndId("A", "routeA"));
graph.putRouteEntry(routeA);
RouteEntryImpl routeB = new RouteEntryImpl();
routeB.setId(new AgencyAndId("A", "routeB"));
graph.putRouteEntry(routeB);
GtfsRelationalDao gtfsDao = Mockito.mock(GtfsRelationalDao.class);
Route rA = new Route();
rA.setId(routeA.getId());
rA.setShortName("10");
Mockito.when(gtfsDao.getRouteForId(routeA.getId())).thenReturn(rA);
Route rB = new Route();
rB.setId(routeB.getId());
rB.setShortName("10");
Mockito.when(gtfsDao.getRouteForId(routeB.getId())).thenReturn(rB);
RouteCollectionEntriesFactory factory = new RouteCollectionEntriesFactory();
factory.setGroupRoutesByShortName(true);
factory.setGtfsDao(gtfsDao);
factory.setUniqueService(new UniqueServiceImpl());
factory.processRouteCollections(graph);
AgencyAndId id = new AgencyAndId("A", "10");
RouteCollectionEntry routeCollectionEntry = graph.getRouteCollectionForId(id);
assertEquals(id, routeCollectionEntry.getId());
List<RouteEntry> routes = routeCollectionEntry.getChildren();
assertEquals(2, routes.size());
assertTrue(routes.contains(routeA));
assertTrue(routes.contains(routeB));
List<RouteCollectionEntry> routeCollections = graph.getAllRouteCollections();
assertEquals(1, routeCollections.size());
assertTrue(routeCollections.contains(routeCollectionEntry));
routeCollections = agency.getRouteCollections();
assertEquals(1, routeCollections.size());
assertTrue(routeCollections.contains(routeCollectionEntry));
}
use of org.onebusaway.transit_data_federation.bundle.tasks.UniqueServiceImpl in project onebusaway-application-modules by camsys.
the class TripEntriesFactoryTest method test.
@Test
public void test() {
GtfsRelationalDao gtfsDao = Mockito.mock(GtfsRelationalDao.class);
Agency agency = new Agency();
agency.setId("1");
agency.setTimezone("America/Los_Angeles");
// gtfsDao.saveEntity(agency);
Route route = new Route();
route.setId(new AgencyAndId("1", "routeA"));
route.setAgency(agency);
Mockito.when(gtfsDao.getAllRoutes()).thenReturn(Arrays.asList(route));
AgencyAndId shapeId = new AgencyAndId("1", "shapeId");
Trip trip = new Trip();
trip.setId(new AgencyAndId("1", "tripA"));
trip.setRoute(route);
trip.setServiceId(new AgencyAndId("1", "serviceId"));
trip.setShapeId(shapeId);
Mockito.when(gtfsDao.getTripsForRoute(route)).thenReturn(Arrays.asList(trip));
Stop stopA = new Stop();
stopA.setId(aid("stopA"));
StopTime stA = new StopTime();
stA.setId(100);
stA.setArrivalTime(time(9, 00));
stA.setDepartureTime(time(9, 05));
stA.setStopSequence(100);
stA.setStop(stopA);
stA.setTrip(trip);
Stop stopB = new Stop();
stopB.setId(aid("stopB"));
StopTime stB = new StopTime();
stB.setId(101);
stB.setArrivalTime(time(10, 00));
stB.setDepartureTime(time(10, 05));
stB.setStopSequence(102);
stB.setStop(stopB);
stB.setTrip(trip);
Mockito.when(gtfsDao.getStopTimesForTrip(trip)).thenReturn(Arrays.asList(stA, stB));
TransitGraphImpl graph = new TransitGraphImpl();
graph.putStopEntry(stop("stopA", 47.672207391799056, -122.387855896286));
graph.putStopEntry(stop("stopB", 47.66852277218285, -122.3853882639923));
RouteEntryImpl routeEntry = route("routeA");
graph.putRouteEntry(routeEntry);
graph.initialize();
ShapePointsFactory shapePointsFactory = new ShapePointsFactory();
shapePointsFactory.addPoint(47.673840100841396, -122.38756621771239);
shapePointsFactory.addPoint(47.668667271970484, -122.38756621771239);
shapePointsFactory.addPoint(47.66868172192725, -122.3661729186096);
ShapePoints shapePoints = shapePointsFactory.create();
ShapePointHelper shapePointHelper = Mockito.mock(ShapePointHelper.class);
Mockito.when(shapePointHelper.getShapePointsForShapeId(shapeId)).thenReturn(shapePoints);
TripEntriesFactory factory = new TripEntriesFactory();
factory.setGtfsDao(gtfsDao);
factory.setShapePointHelper(shapePointHelper);
factory.setUniqueService(new UniqueServiceImpl());
StopTimeEntriesFactory stopTimeEntriesFactory = new StopTimeEntriesFactory();
stopTimeEntriesFactory.setDistanceAlongShapeLibrary(new DistanceAlongShapeLibrary());
factory.setStopTimeEntriesFactory(stopTimeEntriesFactory);
factory.processTrips(graph);
TripEntryImpl entry = graph.getTripEntryForId(trip.getId());
assertEquals(trip.getId(), entry.getId());
assertEquals(route.getId(), entry.getRoute().getId());
assertEquals(lsid("serviceId"), entry.getServiceId());
assertEquals(trip.getShapeId(), entry.getShapeId());
assertEquals(2177.1, entry.getTotalTripDistance(), 0.1);
List<StopTimeEntry> stopTimes = entry.getStopTimes();
assertEquals(2, stopTimes.size());
for (StopTimeEntry stopTime : stopTimes) {
assertSame(entry, stopTime.getTrip());
}
}
use of org.onebusaway.transit_data_federation.bundle.tasks.UniqueServiceImpl in project onebusaway-application-modules by camsys.
the class AgencyEntriesFactoryTest method testProcessAgencies.
@Test
public void testProcessAgencies() {
GtfsRelationalDao gtfsDao = Mockito.mock(GtfsRelationalDao.class);
Agency agencyA = new Agency();
agencyA.setId("A");
Agency agencyB = new Agency();
agencyB.setId("B");
Mockito.when(gtfsDao.getAllAgencies()).thenReturn(Arrays.asList(agencyA, agencyB));
TransitGraphImpl graph = new TransitGraphImpl();
AgencyEntriesFactory factory = new AgencyEntriesFactory();
factory.setGtfsDao(gtfsDao);
factory.setUniqueService(new UniqueServiceImpl());
factory.processAgencies(graph);
AgencyEntry agencyEntryA = graph.getAgencyForId("A");
assertEquals("A", agencyEntryA.getId());
AgencyEntry agencyEntryB = graph.getAgencyForId("B");
assertEquals("B", agencyEntryB.getId());
List<AgencyEntry> agencies = graph.getAllAgencies();
assertEquals(2, agencies.size());
assertTrue(agencies.contains(agencyEntryA));
assertTrue(agencies.contains(agencyEntryB));
}
use of org.onebusaway.transit_data_federation.bundle.tasks.UniqueServiceImpl in project onebusaway-application-modules by camsys.
the class RouteEntriesFactoryTest method testProcessRoutes.
@Test
public void testProcessRoutes() {
GtfsRelationalDao gtfsDao = Mockito.mock(GtfsRelationalDao.class);
Agency agency = new Agency();
agency.setId("A");
Route routeA = new Route();
routeA.setAgency(agency);
routeA.setId(new AgencyAndId("A", "routeA"));
Route routeB = new Route();
routeB.setAgency(agency);
routeB.setId(new AgencyAndId("A", "routeB"));
Mockito.when(gtfsDao.getAllRoutes()).thenReturn(Arrays.asList(routeA, routeB));
TransitGraphImpl graph = new TransitGraphImpl();
RouteEntriesFactory factory = new RouteEntriesFactory();
factory.setGtfsDao(gtfsDao);
factory.setUniqueService(new UniqueServiceImpl());
factory.processRoutes(graph);
RouteEntryImpl routeEntryA = graph.getRouteForId(routeA.getId());
RouteEntryImpl routeEntryB = graph.getRouteForId(routeB.getId());
List<RouteEntry> routes = graph.getAllRoutes();
assertEquals(2, routes.size());
assertTrue(routes.contains(routeEntryA));
assertTrue(routes.contains(routeEntryB));
}
Aggregations