Я использую rails_admin и разрабатываю в своих рельсах 3 приложения и записываю тесты для контроля доступа в огурце.Тестирование контроля доступа с огурцом и capybara
Я хочу, чтобы проверить, что кто-то не администратор не может получить доступ ко всем маршрутам rails_admin (например)
Если я явно проверить так:
Scenario: An authenticated user cannot access site administration
Given I am an authenticated user "kate", "[email protected]"
When I visit the administration page
Then I should see access denied
я могу соответствовать строке «страницу администрирования «на маршрут« rails_admin_dashboard_path »и сделать мой тестовый проход просто прекрасным. Но это, похоже, проверяет приложение неправильно. Я хочу проверить ВСЕ маршруты (как-то через них), а не подразумевать их и, возможно, пропустить один или два.
Что-то вроде этого:
Scenario: An authenticated user cannot access site administration
Given I am an authenticated user "kate", "[email protected]"
When I visit ANY administration page
Then I should see access denied
Может кто-нибудь посоветовать мне о том, как эффективно проверить это? Правильно ли я подхожу? Должен ли я делать это в rspec вместо этого?
Как вы могли бы сказать, я немного n00b.
Это похоже на хороший способ реализовать мой контроль доступа. Спасибо. Но как я могу проверить, что это действительно работает? – Rimian