/**
  * @param RouteSpecification $aRouteSpecification
  * @return Itinerary[] A list of itineraries that satisfy the specification. May be an empty list if no route is found.
  */
 public function fetchRoutesForSpecification(RouteSpecification $aRouteSpecification)
 {
     $transitPaths = $this->graphTraversalService->findShortestPath($aRouteSpecification->origin(), $aRouteSpecification->destination());
     $itineraries = array();
     foreach ($transitPaths as $transitPath) {
         $itineraries[] = $this->toItinerary($transitPath);
     }
     return $itineraries;
 }
 /**
  * @test
  */
 public function it_has_a_destination()
 {
     $this->assertEquals('Berlin', $this->object->destination());
 }