Merge branch 'test-mix-tasks' into 'develop'
[akkoma] / test / web / web_finger / web_finger_controller_test.exs
1 defmodule Pleroma.Web.WebFinger.WebFingerControllerTest do
2 use Pleroma.Web.ConnCase
3
4 import Pleroma.Factory
5 import Tesla.Mock
6
7 setup do
8 mock(fn env -> apply(HttpRequestMock, :request, [env]) end)
9 :ok
10 end
11
12 test "Webfinger JRD" do
13 user = insert(:user)
14
15 response =
16 build_conn()
17 |> put_req_header("accept", "application/jrd+json")
18 |> get("/.well-known/webfinger?resource=acct:#{user.nickname}@localhost")
19
20 assert json_response(response, 200)["subject"] == "acct:#{user.nickname}@localhost"
21 end
22
23 test "Webfinger XML" do
24 user = insert(:user)
25
26 response =
27 build_conn()
28 |> put_req_header("accept", "application/xrd+xml")
29 |> get("/.well-known/webfinger?resource=acct:#{user.nickname}@localhost")
30
31 assert response(response, 200)
32 end
33
34 test "Sends a 400 when resource param is missing" do
35 response =
36 build_conn()
37 |> put_req_header("accept", "application/xrd+xml,application/jrd+json")
38 |> get("/.well-known/webfinger")
39
40 assert response(response, 400)
41 end
42 end