I created an integrations test that attempted to uploade a file as
follows:
def uploaded_file(path, content_type="application/octet-stream",
filename=nil)
filename ||= File.basename(path)
t = Tempfile.new(filename)
FileUtils.copy_file(path, t.path)
(class << t; self; end;).class_eval do
alias local_path path
define_method(:original_filename) { filename }
define_method(:content_type) { content_type }
end
return t
end
# a JPEG helper
def uploaded_jpeg(path, filename=nil)
uploaded_file(path, ''image/jpeg'', filename)
end
def test_this
file = uploaded_jpeg("/tmp/foo.jpg")
post "/images/post", :file => file
end
When i did this, each time the post was done, the ''file''
parameter was
stringified instead of passing in the actual file. This works fine in
the functional test equivalent.
I would post this on dev.rubyonrails.com, but that appears to be down.
--eric
--
Posted via http://www.ruby-forum.com/.