aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2014-04-17 14:46:45 -0300
committerRafael Mendonça França <rafaelmfranca@gmail.com>2014-04-17 14:46:45 -0300
commitb77d10f6fe4a66be09afef9f04f4abfe99af7e35 (patch)
tree1563c8f3f3b1c58469175540d21b2458b48a12a9
parent27a0a4b69b873a9d36f23fb734fc89f564b63a8d (diff)
parente601728dceb779b6b2aae800c66eb8b3f20f9aaa (diff)
downloadrails-b77d10f6fe4a66be09afef9f04f4abfe99af7e35.tar.gz
rails-b77d10f6fe4a66be09afef9f04f4abfe99af7e35.tar.bz2
rails-b77d10f6fe4a66be09afef9f04f4abfe99af7e35.zip
Merge pull request #14755 from timlinquist/to_io_http_upload
Use common to_io so users can access the underlying IO object
-rw-r--r--actionpack/lib/action_dispatch/http/upload.rb5
-rw-r--r--actionpack/test/dispatch/uploaded_file_test.rb6
2 files changed, 11 insertions, 0 deletions
diff --git a/actionpack/lib/action_dispatch/http/upload.rb b/actionpack/lib/action_dispatch/http/upload.rb
index a8d2dc3950..afbfa58bce 100644
--- a/actionpack/lib/action_dispatch/http/upload.rb
+++ b/actionpack/lib/action_dispatch/http/upload.rb
@@ -31,6 +31,11 @@ module ActionDispatch
@headers = hash[:head]
end
+ # Shortcut for working directly with +tempfile+
+ def to_io
+ @tempfile
+ end
+
# Shortcut for +tempfile.read+.
def read(length=nil, buffer=nil)
@tempfile.read(length, buffer)
diff --git a/actionpack/test/dispatch/uploaded_file_test.rb b/actionpack/test/dispatch/uploaded_file_test.rb
index 72f3d1db0d..2a58dadcf6 100644
--- a/actionpack/test/dispatch/uploaded_file_test.rb
+++ b/actionpack/test/dispatch/uploaded_file_test.rb
@@ -33,6 +33,12 @@ module ActionDispatch
assert_equal 'foo', uf.tempfile
end
+ def test_delegates_to_io_to_tempfile
+ tf = Object.new
+ uf = Http::UploadedFile.new(:tempfile => tf)
+ assert_equal tf, uf.to_io
+ end
+
def test_delegates_path_to_tempfile
tf = Class.new { def path; 'thunderhorse' end }
uf = Http::UploadedFile.new(:tempfile => tf.new)