Огурец (с watir-webdriver): неопределенный метод `confirmation_token'

Как я могу использовать токен подтверждения в огурце? Мне нужно это, чтобы проверить регистрацию без проверки электронной почты.

Мой код:

  @b.text_field(:name => 'profile[prename]').set 'Kurt'

  @b.text_field(:name => 'profile[surname]').set 'Russell'

  @b.text_field(:id => 'profile_email').set '[email protected]'

  @b.text_field(:id => 'profile_password').set 'password'

  @b.text_field(:name => 'profile[password_confirmation]').set 'password'

  @b.button(:id => 'profile_submit').click

  @ctoken = Profile.last.confirmation_token

  @b.goto("http://localhost:3000/profiles/confirmation?confirmation_token=#{@ctoken}")

or:

  @b.goto("http://localhost:3000/profiles/confirmation?confirmation_token=#{Profile.last.confirmation_token}")

Я стал: неопределенный метод `confirmation_token' для nil:NilClass (NoMethodError)


person Kurt Russell    schedule 05.07.2012    source источник


Ответы (1)


Мне кажется, что Profile.last возвращает nil в вашем случае, отсюда и сообщение об ошибке undefined method confirmation_token for nil:NilClass (NoMethodError). Пожалуйста, поделитесь кодом, в котором вы определяете Profile.

person Željko Filipin    schedule 05.07.2012
comment
Как я могу найти этот путь подтверждения_токена? - person Kurt Russell; 05.07.2012
comment
Я понятия не имею, что это такое. Что такое Profile? Как это определяется? - person Željko Filipin; 05.07.2012