mirror of
https://github.com/lostisland/faraday.git
synced 2025-10-08 00:03:41 -04:00
56 lines
1.6 KiB
Ruby
56 lines
1.6 KiB
Ruby
require File.expand_path(File.join(File.dirname(__FILE__), 'helper'))
|
|
|
|
class TestEnv < Faraday::TestCase
|
|
def setup
|
|
@conn = Faraday::Connection.new :url => 'http://sushi.com/api', :headers => {'Mime-Version' => '1.0'}
|
|
@conn.options[:timeout] = 3
|
|
@conn.options[:open_timeout] = 5
|
|
@conn.ssl[:verify] = false
|
|
@conn.proxy 'http://proxy.com'
|
|
@input = {
|
|
:body => 'abc',
|
|
:headers => {'Server' => 'Faraday'}}
|
|
@env = env_for @conn do |req|
|
|
req.url 'foo.json', 'a' => 1
|
|
req['Server'] = 'Faraday'
|
|
req.body = @input[:body]
|
|
end
|
|
end
|
|
|
|
def test_request_create_stores_method
|
|
assert_equal :get, @env[:method]
|
|
end
|
|
|
|
def test_request_create_stores_addressable_uri
|
|
assert_equal 'http://sushi.com/api/foo.json?a=1', @env[:url].to_s
|
|
end
|
|
|
|
def test_request_create_stores_headers
|
|
assert_kind_of Rack::Utils::HeaderHash, @env[:request_headers]
|
|
assert_equal @input[:headers].merge('Mime-Version' => '1.0'), @env[:request_headers]
|
|
end
|
|
|
|
def test_request_create_stores_body
|
|
assert_equal @input[:body], @env[:body]
|
|
end
|
|
|
|
def test_request_create_stores_ssl_options
|
|
assert_equal 3, @env[:request][:timeout]
|
|
assert_equal 5, @env[:request][:open_timeout]
|
|
end
|
|
|
|
def test_request_create_stores_ssl_options
|
|
assert_equal false, @env[:ssl][:verify]
|
|
end
|
|
|
|
def test_request_create_stores_proxy_options
|
|
assert_equal 'proxy.com', @env[:request][:proxy][:uri].host
|
|
end
|
|
|
|
def env_for(connection)
|
|
env_setup = Faraday::Request.create do |req|
|
|
yield req
|
|
end
|
|
env_setup.to_env_hash(connection, :get)
|
|
end
|
|
end |