mirror of
https://github.com/lostisland/faraday.git
synced 2025-11-27 00:04:03 -05:00
make NestedParamsEncoder the default in 0.9
This commit is contained in:
parent
af73cdddc5
commit
b035bcb990
@ -92,7 +92,7 @@ module Faraday
|
|||||||
:oauth)
|
:oauth)
|
||||||
|
|
||||||
def params_encoder
|
def params_encoder
|
||||||
self[:params_encoder] ||= NestedParamsEncoder
|
self[:params_encoder] ||= Faraday::Utils.default_params_encoder
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@ -175,11 +175,13 @@ module Faraday
|
|||||||
NestedParamsEncoder.decode(query)
|
NestedParamsEncoder.decode(query)
|
||||||
end
|
end
|
||||||
|
|
||||||
class << self
|
def default_params_encoder
|
||||||
attr_accessor :default_params_encoder
|
@default_params_encoder ||= NestedParamsEncoder
|
||||||
end
|
end
|
||||||
|
|
||||||
self.default_params_encoder = FlatParamsEncoder
|
class << self
|
||||||
|
attr_writer :default_params_encoder
|
||||||
|
end
|
||||||
|
|
||||||
# Stolen from Rack
|
# Stolen from Rack
|
||||||
def normalize_params(params, name, v = nil)
|
def normalize_params(params, name, v = nil)
|
||||||
|
|||||||
@ -3,6 +3,10 @@ require 'uri'
|
|||||||
|
|
||||||
class TestConnection < Faraday::TestCase
|
class TestConnection < Faraday::TestCase
|
||||||
|
|
||||||
|
def teardown
|
||||||
|
Faraday::Utils.default_params_encoder = nil
|
||||||
|
end
|
||||||
|
|
||||||
def with_env(key, proxy)
|
def with_env(key, proxy)
|
||||||
old_value = ENV.fetch(key, false)
|
old_value = ENV.fetch(key, false)
|
||||||
ENV[key] = proxy
|
ENV[key] = proxy
|
||||||
@ -323,13 +327,6 @@ class TestRequestParams < Faraday::TestCase
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def get(*args)
|
|
||||||
env = @conn.get(*args) do |req|
|
|
||||||
yield req if block_given?
|
|
||||||
end
|
|
||||||
env[:url].query
|
|
||||||
end
|
|
||||||
|
|
||||||
def assert_query_equal(expected, query)
|
def assert_query_equal(expected, query)
|
||||||
assert_equal expected, query.split('&').sort
|
assert_equal expected, query.split('&').sort
|
||||||
end
|
end
|
||||||
@ -390,14 +387,37 @@ class TestRequestParams < Faraday::TestCase
|
|||||||
end
|
end
|
||||||
|
|
||||||
def test_array_params_in_url
|
def test_array_params_in_url
|
||||||
|
Faraday::Utils.default_params_encoder = nil
|
||||||
create_connection 'http://a.co/page1?color[]=red&color[]=blue'
|
create_connection 'http://a.co/page1?color[]=red&color[]=blue'
|
||||||
query = get
|
query = get
|
||||||
assert_equal "color%5B%5D=red&color%5B%5D=blue", query
|
assert_equal "color%5B%5D=red&color%5B%5D=blue", query
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_array_params_in_params
|
def test_array_params_in_params
|
||||||
|
Faraday::Utils.default_params_encoder = nil
|
||||||
create_connection 'http://a.co/page1', :params => {:color => ['red', 'blue']}
|
create_connection 'http://a.co/page1', :params => {:color => ['red', 'blue']}
|
||||||
query = get
|
query = get
|
||||||
assert_equal "color%5B%5D=red&color%5B%5D=blue", query
|
assert_equal "color%5B%5D=red&color%5B%5D=blue", query
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_array_params_in_url_with_flat_params
|
||||||
|
Faraday::Utils.default_params_encoder = Faraday::FlatParamsEncoder
|
||||||
|
create_connection 'http://a.co/page1?color=red&color=blue'
|
||||||
|
query = get
|
||||||
|
assert_equal "color=red&color=blue", query
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_array_params_in_params_with_flat_params
|
||||||
|
Faraday::Utils.default_params_encoder = Faraday::FlatParamsEncoder
|
||||||
|
create_connection 'http://a.co/page1', :params => {:color => ['red', 'blue']}
|
||||||
|
query = get
|
||||||
|
assert_equal "color=red&color=blue", query
|
||||||
|
end
|
||||||
|
|
||||||
|
def get(*args)
|
||||||
|
env = @conn.get(*args) do |req|
|
||||||
|
yield req if block_given?
|
||||||
|
end
|
||||||
|
env[:url].query
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user