Parent

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

Public Class Methods

new(path, content_type = "text/plain", binary = false) click to toggle source
# File lib/rack/test/uploaded_file.rb, line 20
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

local_path() click to toggle source
Alias for: path
path() click to toggle source
# File lib/rack/test/uploaded_file.rb, line 33
def path
  @tempfile.path
end
Also aliased as: local_path

[Validate]

Generated with the Darkfish Rdoc Generator 2.