我正在编写一个规范来验证我的Video
模型是否会在创建 vimeo 视频时为其创建正确的缩略图。它看起来像这样:
it "creates thumbnail url" do
vimeo_url = "http://player.vimeo.com/video/12345"
vid = Factory.build(:video, video_url:vimeo_url)
# thumbnail created when saved
vid.save!
expect do
URI.parse(vid.thumbnail_url)
end.to_not raise_error
end
问题是我的测试非常慢,因为它必须访问 vimeo.com。所以我试图存根调用服务器的方法。所以两个问题:
1)这是存根的正确方法/时间吗
2)如果是,我该如何存根?在我的Video
模型中,我有一个名为get_vimeo_thumbnail()
vimeo.com 的方法。我想存根该方法。但是,如果在我的规范中我这样做vid.stub(:get_vimeo_thumbnail).and_return("http://someurl.com")
是行不通的。当我运行测试时,它仍然会访问 vimeo.com。