我有这个规格:
post :create, :room_id => @room.id, :image => Rack::Test::UploadedFile.new(path, 'text/jpg')
response.should redirect_to admin_room_path(@room)
@room.reload.pictures.count.should == 1
pic = @room.pictures.first
File.open(pic.image.url).should == File.open(path)
# Not working
它失败并出现以下错误:
1) Admin::PicturesController should fail to upload a new picture
Failure/Error: File.open(pic.image.url).should == File.open(path)
Errno::ENOENT:
No such file or directory - /uploads/picture/image/5134d0fa93ff007fcd000016/image1.jpg
# ./spec/controllers/admin/pictures_controller_spec.rb:26:in `initialize'
# ./spec/controllers/admin/pictures_controller_spec.rb:26:in `open'
# ./spec/controllers/admin/pictures_controller_spec.rb:26:in `block (2 levels) in <top (required)>'
未找到该文件,但/uploads/picture/image/5134d0fa93ff007fcd000016/
已创建目录。
除文件外的所有内容都是正确的。
我的初始化程序:
if Rails.env.test? or Rails.env.cucumber?
CarrierWave.configure do |config|
config.storage = :file
config.enable_processing = true
end
end
我错过了什么吗?