Я сейчас нахожусь в RailsTutorial 3.2, Раздел 9.3.1 Индекс пользователя .
Листинг 9.27 направляет редактирование кода spec/requests/authentication_pages_spec.rb
следующим образом:
require 'spec_helper'
describe "Authentication" do
.
.
.
describe "with valid information" do
let(:user) { FactoryGirl.create(:user) }
before { valid_signin(user) }
it { should have_selector('title', text: user.name) }
it { should have_link('Users', href: users_path) }
it { should have_link('Profile', href: user_path(user)) }
it { should have_link('Settings', href: edit_user_path(user)) }
it { should have_link('Sign out', href: signout_path) }
it { should_not have_link('Sign in', href: signin_path) }
.
.
.
end
end
end
После этого соответствующий раздел тестов завершается неудачно. Я очень добросовестно следовал этому руководству, поэтому в остальном мой код и настройки практически идентичны.
После тестирования нескольких вещей я обнаружил, что изменение
before { valid_signin(user) }
строка для чтения
before { sign_in user }
вместо этого снова выполнит все тесты. Есть ли что-то в строке valid_signin(user)
, которая синтаксически отключена, или это указывает на ошибку в другом месте моего кода?
(Приложение работает точно так, как и должно быть, это просто тест, который говорит, что это не так.)