如何在Controller中测试是否发生异常?

时间:2012-09-05 09:09:23

标签: ruby-on-rails ruby ruby-on-rails-3

# controller
def index
  p = params[:p]        
  raise ABCException if p
end

# test
test "expect index controller raise ABCException" do
  assert_raise ABCException do
    # how do I write this block?
  end
end

我想用调用 index 控制器:p => true 引发异常。 我理解assert_raise函数,但不知道如何像最终用户请求一样调用控制器。

1 个答案:

答案 0 :(得分:2)

你可以做到

assert_raise ABCException do
  get :index, :p => true
end