def route_for(options = {})
      options = options.with_indifferent_access

      origin = ensure_place options[:origin]
      destination = ensure_place options[:destination]

      raise ArgumentError, 'Must provide origin and destination' if origin.nil? || destination.nil?

      routes_for(origin).detect { |route| route.destination == destination }
    end
def route_for(options = {})
      options = options.with_indifferent_access

      origin = ensure_place options[:origin]
      destination = ensure_place options[:destination]

      raise ArgumentError, 'Must provide origin and destination' if origin.nil? || destination.nil?

      routes_for(origin).detect { |route| route.destination == destination }
    end
Public: Finds a route for you based on one origin and destination

 origin        - A place representing the origin, or an object which you built the origin from
 destination   - A place representing the destination, or an object which you built the
                   destination from

 A Route for given origin and destination