ste*_*och 2 rspec ruby-on-rails stub
我的规范中有以下内容:
before do
@item = Item.new( title: "Lorem ipsum",
image: File.new(Rails.root.join('app', 'assets', 'images', 'rails.png')))
end
Run Code Online (Sandbox Code Playgroud)
相关规范需要大约 30 秒才能运行,但当我image: File.new()从哈希中删除时,我的测试运行时间不到 1 秒!
因此,File.new()向我的规格添加负载也是如此,如果可能的话,我想将其存根,但是当我尝试这样做时:
image: File.stub(Rails.root.join('app', 'assets', 'images', 'rails.png')))
Run Code Online (Sandbox Code Playgroud)
我在测试输出中看到以下错误:
Failure/Error: image: File.stub(Rails.root.join('app', 'assets', 'images', 'rails.png'))) }
NoMethodError:
undefined method `to_sym' for #<Pathname:0xae767d8>
Run Code Online (Sandbox Code Playgroud)
如果有任何建议,我将不胜感激。FWIW,图像上传是由回形针处理的。
我会做这样的事情:
@item = Item.new( title: "Lorem ipsum")
file = double('file', :size => 0.5.megabytes, :content_type => 'png', :original_filename => 'rails')
@item.stub(image).and_return(file)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9610 次 |
| 最近记录: |