Class: Rack::Test::UploadedFile

### Home Classes Methods

### In Files

- lib/rack/test/uploaded_file.rb

### Parent

Object

### Methods

- ::new
- #local_path
- #path

### Files

- MIT-LICENSE.txt
- README.rdoc

### Class/Module Index

Quicksearch

- Rack
- Rack::Test
- Rack::Test::Error
- Rack::Test::Methods
- Rack::Test::Session
- Rack::Test::UploadedFile

No matching classes.

# 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

local_path() click to toggle source
Alias for: path
path() click to toggle source

    # File lib/rack/test/uploaded_file.rb, line 36
    def path
      @tempfile.path
    end

Also aliased as: local_path

[Validate]

Generated with the Darkfish Rdoc Generator 2.