У меня есть 2 теста, которые я пытаюсь запустить, и мне нужно войти в систему.
RSpec.describe MealsController, type: :controller do
before(:all) do
Location.create! name: 'test'
@user = create(:user, :admin)
@client1 = create(:client, user_id: @user.id)
@client2 = create(:client)
login_as @user, scope: :user
end
describe "GET index" do
it 'expects successfull index load' do
get :index
expect(response.status).to eq(200)
end
it 'expects order to be' do
get :index, {:params => { :client_id => @client2.id }}
expect(session[:orderClient]).to eq(@client2.id)
end
end
end
Первый тест пройден успешно, но второй не пройден с ответом:
Failure/Error: redirect_to new_user_session_path, notice: "You must be signed in to access this page."
Я не понимаю, почему get :index
работает в первом тесте, но не во втором.Я попытался добавить строку login_as @user, scope: :user
непосредственно ко второму тесту, и произошла та же ошибка.