14
¿Cómo puedo probar rescue_from es RSpec? Me gustaría asegurarme de que, si se produce una de las excepciones, el controlador configura correctamente el flash y lo redirecciona. ¿Hay alguna manera de simular la excepción?RSpec: Prueba rescue_from
rescue_from PageAccessDenied do
flash[:alert] = "You do not have the necessary roles to access this page"
redirect_to root_url
end
rescue_from CanCan::AccessDenied do |exception|
flash[:alert] = exception.message
redirect_to root_url
end
Aún mejor solución: https://www.relishapp.com/rspec/rspec-rails/docs/controller-specs/anonymous-controller – kaihowl
No entiendo el código auxiliar ... Me parece que hace que el controlador provoque ese error en una prueba. ¿Cómo puede estar seguro de que aumentará el error en la producción si solo está fingiendo en las pruebas? – hamstar
@hamstar Esto solo prueba el comportamiento del bloque 'rescue_from'. Para asegurarse de que 'authorize!' Genera un error, debe escribir otra prueba para eso. Presumiblemente, esto sucede en una biblioteca (¿CanCan?) Y el autor ha escrito la prueba allí. – zetetic