Method: Rack::Test::UploadedFile#initialize

Defined in:
lib/rack/test/uploaded_file.rb

#initialize(path, content_type = "text/plain", binary = false) ⇒ UploadedFile

Returns a new instance of UploadedFile.



20
21
22
23
24
25
26
27
28
29
30
31
# 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