cuke: optional timeout

This commit is contained in:
Emil Tin 2014-03-31 16:05:09 +02:00
parent 179f53b21b
commit ba2356d2ba
5 changed files with 14 additions and 9 deletions

View File

@ -1,7 +1,7 @@
require 'rspec/expectations'
DEFAULT_PORT = 5000
DEFAULT_TIMEOUT = 2
puts "Ruby version #{RUBY_VERSION}"
unless RUBY_VERSION.to_f >= 1.9
@ -16,6 +16,14 @@ else
puts "Using default port #{OSRM_PORT}"
end
if ENV["OSRM_TIMEOUT"]
OSRM_TIMEOUT = ENV["OSRM_TIMEOUT"].to_i
puts "Timeout set to #{OSRM_TIMEOUT}"
else
OSRM_TIMEOUT = DEFAULT_TIMEOUT
puts "Using default timeout #{OSRM_TIMEOUT}"
end
AfterConfiguration do |config|
clear_log_files

View File

@ -1,8 +1,6 @@
require 'socket'
require 'open3'
LAUNCH_TIMEOUT = 20
SHUTDOWN_TIMEOUT = 20
OSRM_ROUTED_LOG_FILE = 'osrm-routed.log'
class OSRMBackgroundLauncher
@ -21,7 +19,7 @@ class OSRMBackgroundLauncher
private
def launch
Timeout.timeout(LAUNCH_TIMEOUT) do
Timeout.timeout(OSRM_TIMEOUT) do
osrm_up
wait_for_connection
end
@ -30,7 +28,7 @@ class OSRMBackgroundLauncher
end
def shutdown
Timeout.timeout(SHUTDOWN_TIMEOUT) do
Timeout.timeout(OSRM_TIMEOUT) do
osrm_down
end
rescue Timeout::Error

View File

@ -3,7 +3,7 @@ require 'net/http'
def request_locate_url path
@query = path
uri = URI.parse "#{HOST}/#{path}"
Timeout.timeout(REQUEST_TIMEOUT) do
Timeout.timeout(OSRM_TIMEOUT) do
Net::HTTP.get_response uri
end
rescue Errno::ECONNREFUSED => e

View File

@ -3,7 +3,7 @@ require 'net/http'
def request_nearest_url path
@query = path
uri = URI.parse "#{HOST}/#{path}"
Timeout.timeout(REQUEST_TIMEOUT) do
Timeout.timeout(OSRM_TIMEOUT) do
Net::HTTP.get_response uri
end
rescue Errno::ECONNREFUSED => e

View File

@ -1,7 +1,6 @@
require 'net/http'
HOST = "http://localhost:#{OSRM_PORT}"
REQUEST_TIMEOUT = 1
DESTINATION_REACHED = 15 #OSRM instruction code
class Hash
@ -18,7 +17,7 @@ def request_path path, waypoints=[], options={}
params = nil if params==""
uri = URI.parse ["#{HOST}/#{path}", params].compact.join('?')
@query = uri.to_s
Timeout.timeout(REQUEST_TIMEOUT) do
Timeout.timeout(OSRM_TIMEOUT) do
Net::HTTP.get_response uri
end
rescue Errno::ECONNREFUSED => e