2011-09-21 85 views
6

我正在使用Rails 2.3.4和Rspec 1.2.0。我米试图测试,试图呈现一个页面或部分,我发现了一个例外,因为无法在Rspec中测试助手方法的呈现功能

未定义的方法'渲染”的

假设一个帮手,帮助我的方法是

def some_helper 
render(:partial => "some/partial", :locals => {:some => some} 
end 

,并从规范调用它作为

it "should render the partial" do 
some_helper.should render_template("some/partial") 
end 

任何建议将是有益的

回答

8

什么:

it "should render the partial" do 
    helper.should_receive("render").with("some/partial") 
    some_helper 
end 

UPDATE

当您使用新的预期的语法,我会做

it "renders the partial" do 
    allow(helper).to receive(:render) 
    some_helper 
    expect(helper).to have_received(:render).with("some/partial") 
end