Rails 3 似乎忽略了我的 rescue_from 处理程序,所以我无法在下面测试我的重定向。
class ApplicationController < ActionController::Base
rescue_from ActionController::RoutingError, :with => :rescue_404
def rescue_404
flash[:notice] = "Error 404. The url <i>'#{env["vidibus-routing_error.request_uri"]}'</i> does not exist on this website."
redirect_to root_path
end
end
在功能测试和集成测试中,都会忽略此 rescue_from,并引发错误:
ActionController::RoutingError: No route matches "/non_existent_url"
test/integration/custom_404_test.rb:5:in `test_404'
我怎样才能确保这在测试中被正确“捕获”?