Я настраиваю некоторые тесты для приложения rails 3, используя Devise для аутентификации, CanCan для контроля доступа и Cucumber для интеграционного тестирования.В данный момент я работаю над следующим тестом, чтобы проверить правильность контроля доступа (очень просто на данный момент):
Feature: Viewing case list
In order to view my cases
As a IMEBase administration
I want to list all cases
Background: Logged In
Given a logged in user with company_id "1"
Scenario: View cases
Given all the following cases exist:
| claim_number | requestor | claimant | company_id |
| Test Case | Acme | John Doe | 1 |
| Another Case | Yahoo | Stan Smith | 1 |
| Hidden Case | Acme | Steve Jobs | 2 |
When I go to the cases page
Then I should see "Test Case"
And I should see "Another Case"
And I should not see "Hidden Case"
На данный момент моя модель способностей CanCan просто ограничивает доступ к случаям на основе company_idпользователя и дела.Когда я пытаюсь сделать это в браузере, с пользователем для идентификатора компании 1, он работает нормально, может видеть только случаи с идентификатором компании 1. Однако, когда я запускаю тесты, Cucumber терпит неудачу в последний раз (например, он видит Test Case, AnotherCase and Hidden Case).
Я начинаю подозревать, что могу пытаться сделать что-то, что просто не работает (я знаю, что есть некоторые проблемы с devise и CanCan).Должно ли это быть в состоянии работать?Если да, то какая подсказка, что может быть не так?