aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlambda <pleromagit@rogerbraun.net>2018-12-15 15:31:30 +0000
committerlambda <pleromagit@rogerbraun.net>2018-12-15 15:31:30 +0000
commit8cb9580aec10f0f258f4fbd82065d02b0a82b003 (patch)
treeef848d1363e7c31b8dab454fe5b34d23dec0a2fd
parentcc6689cc203d44e19e9aa14c2ef3a3dad823ef88 (diff)
parent5af91020f83acf3acad8511799e4b4e9ecda5b76 (diff)
downloadpleroma-8cb9580aec10f0f258f4fbd82065d02b0a82b003.tar.gz
Merge branch 'bugfix/webfinger-jrd' into 'develop'
Fix requesting application/jrd+json on webfinger See merge request pleroma/pleroma!553
-rw-r--r--config/config.exs1
-rw-r--r--test/web/web_finger/web_finger_controller_test.exs37
2 files changed, 38 insertions, 0 deletions
diff --git a/config/config.exs b/config/config.exs
index 1401b0a3d..1777a54c0 100644
--- 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
new file mode 100644
index 000000000..cac003e76
--- /dev/null
+++ 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