0
我试图运行这样的测试:从控制器Rspec的控制器测试失败
it "render form to update an bundle with a specific id" do
bundle = mock_model(Bundle)
Bundle.stub!(:find).with("1") { bundle }
get :edit, :locale => "en", :id => 1
Bundle.should_receive(:find).with("1").and_return(bundle)
end
代码:
class BundlesController < ApplicationController
# GET /bundles
# GET /bundles.json
.....
# GET /bundles/1/edit
def edit
@bundle = Bundle.find(params[:id])
end
.....
end
但测试失败消息:
BundlesController捆绑更新的形式呈现使用特定ID更新捆绑软件 失败/错误:Bundle.should_receive(:find).with(“1”)。and_return(bundle) ().find(“1”) 预期:1周时间 好评:0次 #./spec/controllers/bundles_controller_spec.rb:60:in`块(3级)的“
谁能帮助我? 谢谢!
我们没有证据表明控制器实际上有一个编辑操作,或者编辑操作调用了'Bundle.find'。请给我们更多的代码。 –
我的猜测是:用一个字符串'“1”代替整数'1':':id =>“1”'。 – rdvdijk