commit: 8cb9580aec10f0f258f4fbd82065d02b0a82b003
parent: cc6689cc203d44e19e9aa14c2ef3a3dad823ef88
Author: lambda <pleromagit@rogerbraun.net>
Date: Sat, 15 Dec 2018 15:31:30 +0000
Merge branch 'bugfix/webfinger-jrd' into 'develop'
Fix requesting application/jrd+json on webfinger
See merge request pleroma/pleroma!553
Diffstat:
2 files changed, 38 insertions(+), 0 deletions(-)
diff --git a/config/config.exs b/config/config.exs
@@ -65,6 +65,7 @@ config :logger, :console,
config :mime, :types, %{
"application/xml" => ["xml"],
"application/xrd+xml" => ["xrd+xml"],
+ "application/jrd+json" => ["jrd+json"],
"application/activity+json" => ["activity+json"],
"application/ld+json" => ["activity+json"]
}
diff --git a/test/web/web_finger/web_finger_controller_test.exs b/test/web/web_finger/web_finger_controller_test.exs
@@ -0,0 +1,37 @@
+defmodule Pleroma.Web.WebFinger.WebFingerControllerTest do
+ use Pleroma.Web.ConnCase
+
+ alias Pleroma.User
+ alias Pleroma.Web.WebFinger.WebFingerController
+
+ import Pleroma.Factory
+ import ExUnit.CaptureLog
+ import Tesla.Mock
+
+ setup do
+ mock(fn env -> apply(HttpRequestMock, :request, [env]) end)
+ :ok
+ end
+
+ test "Webfinger JRD" do
+ user = insert(:user)
+
+ response =
+ build_conn()
+ |> put_req_header("accept", "application/jrd+json")
+ |> get("/.well-known/webfinger?resource=acct:#{user.nickname}@localhost")
+
+ assert json_response(response, 200)["subject"] == "acct:#{user.nickname}@localhost"
+ end
+
+ test "Webfinger XML" do
+ user = insert(:user)
+
+ response =
+ build_conn()
+ |> put_req_header("accept", "application/jrd+json")
+ |> get("/.well-known/webfinger?resource=acct:#{user.nickname}@localhost")
+
+ assert response(response, 200)
+ end
+end