summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/multipart/robust_field_separation6
-rw-r--r--test/spec_multipart.rb6
2 files changed, 12 insertions, 0 deletions
diff --git a/test/multipart/robust_field_separation b/test/multipart/robust_field_separation
new file mode 100644
index 00000000..34956b15
--- /dev/null
+++ b/test/multipart/robust_field_separation
@@ -0,0 +1,6 @@
+--AaB03x
+Content-Disposition: form-data;name="text"
+Content-Type: text/plain
+
+contents
+--AaB03x--
diff --git a/test/spec_multipart.rb b/test/spec_multipart.rb
index b029048e..2d51f091 100644
--- a/test/spec_multipart.rb
+++ b/test/spec_multipart.rb
@@ -306,6 +306,12 @@ describe Rack::Multipart do
params["files"][:filename].must_equal "flowers.exe\u0000.jpg"
end
+ it "is robust separating Content-Disposition fields" do
+ env = Rack::MockRequest.env_for("/", multipart_fixture(:robust_field_separation))
+ params = Rack::Multipart.parse_multipart(env)
+ params["text"].must_equal "contents"
+ end
+
it "not include file params if no file was selected" do
env = Rack::MockRequest.env_for("/", multipart_fixture(:none))
params = Rack::Multipart.parse_multipart(env)