83f065e27aaaa2382bddd9b1ec1036686f9fd6aa
[akkoma] / test / pleroma / web / preload / providers / user_test.exs
1 # Pleroma: A lightweight social networking server
2 # Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
3 # SPDX-License-Identifier: AGPL-3.0-only
4
5 defmodule Pleroma.Web.Preload.Providers.UserTest do
6 use Pleroma.DataCase
7 import Pleroma.Factory
8 alias Pleroma.Web.Preload.Providers.User
9
10 describe "returns empty when user doesn't exist" do
11 test "nil user specified" do
12 assert User.generate_terms(%{user: nil}) == %{}
13 end
14
15 test "missing user specified" do
16 assert User.generate_terms(%{user: :not_a_user}) == %{}
17 end
18 end
19
20 describe "specified user exists" do
21 setup do
22 user = insert(:user)
23
24 terms = User.generate_terms(%{user: user})
25 %{terms: terms, user: user}
26 end
27
28 test "account is rendered", %{terms: terms, user: user} do
29 account = terms["/api/v1/accounts/#{user.id}"]
30 assert %{acct: user, username: user} = account
31 end
32 end
33 end