Я пытался написать интеграционное тестовое тестирование, если мой контроллер вызывает исключение ActiveRecord :: RecordNotFound для удаленных статей (которые просто помечены как удаленные):
it "should return 404 for deleted articles" do
@article = Factory :article, :status => "deleted"
expect { get edit_article_path(:id => @article.id) }.to raise_error(ActiveRecord::RecordNotFound)
end
Этот тип тестов работает нормальнов спецификации контроллера, но внутри спецификации / запросов я получаю эту ошибку:
expected ActiveRecord::RecordNotFound, got #<ActionController::RoutingError: No route matches {:action=>"edit", :controller=>"articles", :id=>595}>
Таким образом, он корректно просматривает мои маршруты (так как он знает контроллер и т. д.), но все равно вызывает ошибку.Почему это так?
Спасибо, Йоханнес