3

我想知道如何在会话中登录用户,而无需在测试环境中创建路由或通过标准用户流程登录用户。有没有办法设置 cookie/会话,以便有一个current_user

这里有一些关于它的讨论:https ://github.com/elixir-wallaby/wallaby/issues/57

由于可以通过 Wallaby 读取和设置 cookie,我想知道如何使用它们来设置 current_user 并绕过手动登录流程。

理想情况下,我想要类似的东西:

test "visit dashboard", %{session: session} do
  {:ok, user} =
      MyApp.Accounts.create_user(%{email: "test@example.com", password: "123456"})

  session = Wallaby.Browser.set_cookie(session, :current_user, user)

  # start test of protected page
  Wallaby.Browser.visit(session, "/dashboard")

  # etc.
  ...

end
4

0 回答 0