1
0
Fork 0
mirror of https://github.com/rest-client/rest-client.git synced 2022-11-09 13:49:40 -05:00

Merge pull request #508 from killthekitten/params_array-payload

Allow passing ParamsArray as a payload
This commit is contained in:
Andy Brody 2017-05-22 00:48:34 -04:00 committed by GitHub
commit 432b5edbf8
2 changed files with 12 additions and 0 deletions

View file

@ -22,6 +22,12 @@ module RestClient
else
UrlEncoded.new(params)
end
elsif params.is_a?(ParamsArray)
if _has_file?(params)
Multipart.new(params)
else
UrlEncoded.new(params)
end
elsif params.respond_to?(:read)
Streamed.new(params)
else

View file

@ -259,5 +259,11 @@ Content-Type: text/plain\r
it "shouldn't treat hashes as streameable" do
expect(RestClient::Payload.generate({"foo" => 'bar'})).to be_kind_of(RestClient::Payload::UrlEncoded)
end
it "should recognize multipart payload wrapped in ParamsArray" do
f = File.new(File.dirname(__FILE__) + "/master_shake.jpg")
params = RestClient::ParamsArray.new([[:image, f]])
expect(RestClient::Payload.generate(params)).to be_kind_of(RestClient::Payload::Multipart)
end
end
end