Итак, я пытаюсь создать простой интеграционный тест в Rails. Я хочу проверить мою форму входа. Я просто не могу понять, как правильно передать мои параметры. Мой файл .yml называется агентами .yml. Мой файл фикстуры:
one:
first_name: firstNameTest
last_name: lastNameTest
email: test@test.com
encrypted_password: <%= Devise::Encryptor.digest(Agent, '123456') %>
это должно быть хорошо.
Два теста, которые я пробовал, оба дают мне ошибку. Первый, следующий за Ruby.docs:
class FlowsTest < ActionDispatch::IntegrationTest
test "Login and navigate" do
get "/agents/sign_in"
post "/agents/sign_in", email: agents(:one).email, password:
agents(:one).password
follow_redirect!
end
end
вторая версия:
class FlowsTest < ActionDispatch::IntegrationTest
test "Login and navigate" do
get "/agents/sign_in"
post "/agents/sign_in", agent: {email: agents(:one).email, password: '123456'}
follow_redirect!
end
end
Оба выдают мне ошибку:
Error:
FlowsTest#test_Login_and_navigate:
ArgumentError: unknown keywords: email, password
test/integration/Flows_test.rb:6:in `block in <class:FlowsTest>'
Полагаю, я неправильно передаю параметры. Потому что электронную почту и пароль надо брать из светильников, или я ошибаюсь? Кто-нибудь может помочь? Буду очень признателен. Спасибо всем заранее!