9

我有这个代码

if @temp_user.save
  sign_in(:user, @temp_user)
  render text: "OK"
else
  render text: render_to_string(:partial => "errors")
end

我尝试使用 rspec 验证渲染“OK”

这是我的实际规格:

  it "render text OK" do   
    post :create, {:agent => valid_attributes}
    # response.should have_content("OK")
    response.should render_template(:text => "OK")
  end

但是这个规范总是响应 0 次失败,即使我把“OKI”放在“OK”的位置

有人对此有什么建议吗?

4

3 回答 3

12
response.body.should == "OK"

为我工作

于 2012-11-21T09:20:18.760 回答
4

如果您使用的是 rails 3 或更高版本

expect(response.body).to eq "OK"

将工作

于 2015-04-23T05:09:33.340 回答
1
describe "render text OK" do   
  post :create, {:agent => valid_attributes}
  # response.should have_content("OK"
  response.should render_template(:text => "OK")
end
于 2012-06-06T13:13:52.093 回答