From 77f70d7dbcdc1c2bce4c30dd6ae47b0f2ad3b951 Mon Sep 17 00:00:00 2001 From: Alexey Zapparov Date: Thu, 27 May 2021 17:33:16 +0200 Subject: [PATCH] Finalize spec to solve https://github.com/httprb/http/issues/663 --- spec/lib/http/form_data/multipart_spec.rb | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/spec/lib/http/form_data/multipart_spec.rb b/spec/lib/http/form_data/multipart_spec.rb index 310de23..291630a 100644 --- a/spec/lib/http/form_data/multipart_spec.rb +++ b/spec/lib/http/form_data/multipart_spec.rb @@ -93,21 +93,28 @@ def disposition(params) let(:params) do [ ["metadata", %(filename=first.txt)], - ["file", HTTP::FormData::File.new(StringIO.new("uno"), :content_type => 'plain/text', :filename => "stream-123")], + ["file", HTTP::FormData::File.new(StringIO.new("uno"), :content_type => "plain/text", :filename => "abc")], ["metadata", %(filename=second.txt)], - ["file", HTTP::FormData::File.new(StringIO.new("dos"), :content_type => 'plain/text', :filename => "stream-456")] + ["file", HTTP::FormData::File.new(StringIO.new("dos"), :content_type => "plain/text", :filename => "xyz")] ] end it "allows duplicate param names and preservesd given order" do - # form_data.boundary - expect(form_data.to_s).to eq([ %(--#{form_data.boundary}#{crlf}), + %(Content-Disposition: form-data; name="metadata"#{crlf}), + %(#{crlf}filename=first.txt#{crlf}), + %(--#{form_data.boundary}#{crlf}), + %(Content-Disposition: form-data; name="file"; filename="abc"#{crlf}), + %(Content-Type: plain/text#{crlf}), + %(#{crlf}uno#{crlf}), %(Content-Disposition: form-data; name="metadata"#{crlf}#{crlf}), - %(filename=first.txt#{crlf}), + %(filename=second.txt#{crlf}), %(--#{form_data.boundary}#{crlf}), - %(--#{boundary_value}--#{crlf}) + %(Content-Disposition: form-data; name="file"; filename="xyz"#{crlf}), + %(Content-Type: plain/text#{crlf}), + %(#{crlf}dos#{crlf}), + %(--#{form_data.boundary}--#{crlf}) ].join) end end