Тестирование входа в систему с помощью devise и cucumber

Я пытаюсь проверить функциональность входа в систему с помощью Cucumber. Мой файл users_steps.rb содержит

Given /^I am a user named "([^"]*)" with an email "([^"]*)" and password "([^"]*)"$/ do |name, email, password|
  u = User.new(:name => name,
               :email => email,
               :password => password,
               :password_confirmation => password)
  u.skip_confirmation!
  u.save!
end


When /^I sign in as "(.*)\/(.*)"$/ do |email, password|
  #Given %{I am not logged in}
  When %{I go to the sign in page}
  And %{I fill in "user_email" with "#{email}"}
  And %{I fill in "user_password" with "#{password}"}
  And %{I press "Log Me In"}
end

Then /^I should be signed in$/ do
  Then %{I should see "Sign out"}
end

Then /^I should be signed in$/ do
  Then %{I should see "Sign out"}
end

Then /^I sign out$/ do
  visit('/account/logout')
end

, а мой сценарий с огурцом:

  Scenario: User signs in successfully with email
    Given I am not logged in
    And I am a user named "foo" with an email "user@test.com" and password "please"
    When I go to the sign in page
    And I sign in as "user@test.com/please"
    Then I should be signed in
    When I return next time
    Then I should be already signed in

Однако этот тест не позволяет выполнить вход пользователя. Я проверил, что пользователь правильно создан, но после заполнения формы меня перенаправляют на страницу входа

Я использую капибару. Что мне не хватает?

6
задан bcouste 24 June 2011 в 09:40
поделиться