Skip to content

Commit 12acf88

Browse files
committed
#278 updating faraday to fix issue when param value is an empty array
1 parent 3f36f74 commit 12acf88

File tree

2 files changed

+26
-1
lines changed

2 files changed

+26
-1
lines changed

json_api_client.gemspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
1212
s.summary = 'Build client libraries compliant with specification defined by jsonapi.org'
1313

1414
s.add_dependency "activesupport", '>= 3.2.0'
15-
s.add_dependency "faraday", '~> 0.9'
15+
s.add_dependency "faraday", ['~> 0.15', '>= 0.15.2']
1616
s.add_dependency "faraday_middleware", '~> 0.9'
1717
s.add_dependency "addressable", '~> 2.2'
1818
s.add_dependency "activemodel", '>= 3.2.0'

test/unit/query_builder_test.rb

+25
Original file line numberDiff line numberDiff line change
@@ -169,4 +169,29 @@ def test_can_select_nested_fields_using_comma_separated_strings
169169
Article.select({comments: 'author,text'}, :tags).to_a
170170
end
171171

172+
def test_can_specify_array_filter_value
173+
stub_request(:get, "http://example.com/articles?filter%5Bauthor.id%5D%5B0%5D=foo&filter%5Bauthor.id%5D%5B1%5D=bar")
174+
.to_return(headers: {content_type: "application/vnd.api+json"}, body: {
175+
data: []
176+
}.to_json)
177+
Article.where(:'author.id' => ['foo', 'bar']).to_a
178+
end
179+
180+
def test_can_specify_empty_array_filter_value
181+
stub_request(:get, "http://example.com/articles?filter%5Bauthor.id%5D%5B0%5D")
182+
.to_return(headers: {content_type: "application/vnd.api+json"}, body: {
183+
data: []
184+
}.to_json)
185+
Article.where(:'author.id' => []).to_a
186+
end
187+
188+
def test_can_specify_empty_string_filter_value
189+
stub_request(:get, "http://example.com/articles")
190+
.with(query: {filter: {:'author.id' => ''}})
191+
.to_return(headers: {content_type: "application/vnd.api+json"}, body: {
192+
data: []
193+
}.to_json)
194+
Article.where(:'author.id' => '').to_a
195+
end
196+
172197
end

0 commit comments

Comments
 (0)