Я пытаюсь проверить, что происходит после входа в систему через Devise gem. Например, у меня есть контроллер, чтобы перейти к student_dashboard_path после успешного входа в систему.Как проверить устройство после входа в путь с Capybara
Как я могу проверить это с Capybara и Rspec?
настоящее время у меня это:
/spec/features/user_signs_in_sees_dashboard_spec.rb
require 'rails_helper'
feature 'User sign in' do
scenario 'successfully from sign in page and sees student dashboard' do
sign_in
visit student_dashboard_path
expect(current_path).to eq(student_dashboard_path)
end
end
и у меня есть это:
/spec/support/features/sign_in.rb
module Features
def sign_in
visit user_session_path
fill_in 'Email', with: User.first.email
fill_in 'Password', with: User.first.password
click_button 'Log in'
end
end
и я получаю это сообщение об ошибке:
1) User signs in successfully from sign in and sees dashboard
Failure/Error: expect(current_path).to eq(student_dashboard_path)
expected: "/student/dashboard"
got: "/student/login"
Я не уверен, почему я не могу войти в систему и увидеть студенческую панель.
Что создает пользователь в вашем тесте, и у вас действительно есть открытый текстовый пароль? – Doon