class Rack::Test::UploadedFile
Wraps a Tempfile with a content type. Including one or more UploadedFile's in the params causes Rack::Test to build and issue a multipart request.
Example:
post "/photos", "file" => Rack::Test::UploadedFile.new("me.jpg", "image/jpeg")
Attributes
content_type[RW]
The content type of the “uploaded” file
original_filename[R]
The filename, not including the path, of the “uploaded” file
tempfile[R]
The tempfile
Public Class Methods
new(path, content_type = "text/plain", binary = false)
click to toggle source
# File lib/rack/test/uploaded_file.rb, line 23 def initialize(path, content_type = "text/plain", binary = false) raise "#{path} file does not exist" unless ::File.exist?(path) @content_type = content_type @original_filename = ::File.basename(path) @tempfile = Tempfile.new(@original_filename) @tempfile.set_encoding(Encoding::BINARY) if @tempfile.respond_to?(:set_encoding) @tempfile.binmode if binary FileUtils.copy_file(path, @tempfile.path) end
Public Instance Methods
path()
click to toggle source
# File lib/rack/test/uploaded_file.rb, line 36 def path @tempfile.path end
Also aliased as: local_path