reset_session не работает в тестах на огурец - PullRequest
1 голос
/ 13 января 2011

У меня есть следующий шаг для сценария Cucumber:

Given /^I am not logged in$/ do
  request.reset_session
  controller.instance_variable_set(:@_current_user, nil)
end

Но когда я запускаю свои функции Cucumber, я получаю:

undefined method `reset_session' for nil:NilClass (NoMethodError)

Моя настройка:

  • рельсы 3.0.3
  • огурцы-рельсы 0.3.2

1 Ответ

2 голосов
/ 13 января 2011

Огурец предназначен для тренировки полного стека.Учитывая это, вы, как правило, не хотите обходиться с внутренностями на более низком уровне, как вы могли бы с rspec.

Попробуйте что-то вроде этого:

Given /^I am not logged in$/ do
  visit logout_path
end

В этом примере используется Capybara's visit, так что вам нужно будет соответственно скорректировать, но это должно дать вам правильное представление.

...