summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfeld <feld@feld.me>2019-11-11 19:14:06 +0000
committerfeld <feld@feld.me>2019-11-11 19:14:06 +0000
commite27d78e7687c6d0a1b7b6b66bc802b474a1e7e2f (patch)
treebce2aa20a23ce9b27ffa5da43b9c5ef0fd483f61
parent2cc043591c0d69a8793a70db39ddd2429b1c03f5 (diff)
parentb39b49cc146945ab86db272ae2cd1fe8fad3d9d5 (diff)
downloadpleroma-e27d78e7687c6d0a1b7b6b66bc802b474a1e7e2f.tar.gz
pleroma-e27d78e7687c6d0a1b7b6b66bc802b474a1e7e2f.zip
Merge branch 'nodeinfo-federation-enabled' into 'develop'
report federating status in nodeinfo See merge request pleroma/pleroma!1971
-rw-r--r--lib/pleroma/web/nodeinfo/nodeinfo_controller.ex1
-rw-r--r--test/web/node_info_test.exs24
2 files changed, 25 insertions, 0 deletions
diff --git a/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex b/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex
index d7ae503f6..486b9f6a4 100644
--- a/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex
+++ b/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex
@@ -46,6 +46,7 @@ defmodule Pleroma.Web.Nodeinfo.NodeinfoController do
data
|> Map.merge(%{quarantined_instances: quarantined})
+ |> Map.put(:enabled, Config.get([:instance, :federating]))
else
%{}
end
diff --git a/test/web/node_info_test.exs b/test/web/node_info_test.exs
index a3281b25b..6cc876602 100644
--- a/test/web/node_info_test.exs
+++ b/test/web/node_info_test.exs
@@ -84,6 +84,30 @@ defmodule Pleroma.Web.NodeInfoTest do
Pleroma.Config.put([:instance, :safe_dm_mentions], option)
end
+ test "it shows if federation is enabled/disabled", %{conn: conn} do
+ original = Pleroma.Config.get([:instance, :federating])
+
+ Pleroma.Config.put([:instance, :federating], true)
+
+ response =
+ conn
+ |> get("/nodeinfo/2.1.json")
+ |> json_response(:ok)
+
+ assert response["metadata"]["federation"]["enabled"] == true
+
+ Pleroma.Config.put([:instance, :federating], false)
+
+ response =
+ conn
+ |> get("/nodeinfo/2.1.json")
+ |> json_response(:ok)
+
+ assert response["metadata"]["federation"]["enabled"] == false
+
+ Pleroma.Config.put([:instance, :federating], original)
+ end
+
test "it shows MRF transparency data if enabled", %{conn: conn} do
config = Pleroma.Config.get([:instance, :rewrite_policy])
Pleroma.Config.put([:instance, :rewrite_policy], [Pleroma.Web.ActivityPub.MRF.SimplePolicy])