teach Excon to use #fetch_timeout

This commit is contained in:
rick olson 2019-09-19 15:50:50 -06:00
parent 6c117f47b9
commit a5a398c231
2 changed files with 10 additions and 12 deletions

View File

@ -90,17 +90,15 @@ module Faraday
end
def amend_opts_with_timeouts!(opts, req)
timeout = req[:timeout]
return unless timeout
opts[:read_timeout] = timeout
opts[:connect_timeout] = timeout
opts[:write_timeout] = timeout
open_timeout = req[:open_timeout]
return unless open_timeout
opts[:connect_timeout] = open_timeout
if sec = req.fetch_timeout(:read)
opts[:read_timeout] = sec
end
if sec = req.fetch_timeout(:write)
opts[:write_timeout] = sec
end
if sec = req.fetch_timeout(:open)
opts[:connect_timeout] = sec
end
end
def amend_opts_with_proxy_settings!(opts, req)

View File

@ -43,7 +43,7 @@ RSpec.describe Faraday::Adapter::Excon do
options = adapter.send(:opts_from_env, env)
expect(options[:read_timeout]).to eq(nil)
expect(options[:write_timeout]).to eq(nil)
expect(options[:connect_timeout]).to eq(nil)
expect(options[:connect_timeout]).to eq(3)
end
end
end