Тестирование страниц ошибок в Rails с помощью Rspec + Capybara
В Rails 3.2.9 у меня есть пользовательские страницы ошибок, которые определяются следующим образом:
# application.rb
config.exceptions_app = self.routes
# routes.rb
match '/404' => 'errors#not_found'
Который работает как ожидалось. Когда я установилconfig.consider_all_requests_local = false
вdevelopment.rb
Я получаюnot_found
просмотр при посещении/foo
Но как мне проверить это с Rspec + Capybara? I '
мы пробовали это:
# /spec/features/not_found_spec.rb
require 'spec_helper'
describe 'not found page' do
it 'should respond with 404 page' do
visit '/foo'
page.should have_content('not found')
end
end
Когда я запускаю эту спецификацию, я получаю:
1) not found page should respond with 404 page
Failure/Error: visit '/foo'
ActionController::RoutingError:
No route matches [GET] "/foo"
Как я могу проверить это?
Редактировать:
Забыл упомянуть: яустановитьconfig.consider_all_requests_local = false
вtest.rb