summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhref <href@random.sh>2019-11-11 19:03:43 +0100
committerrinpatch <rinpatch@sdf.org>2019-12-13 21:20:09 +0300
commit865cd2c7c47e3a1e1f5fd9c4bebe9caf9398c315 (patch)
treea52874158893050353dbbe1fcb152f65121db717
parent66563f93fd73afb7caf35b1b803a9dcb6098dea4 (diff)
report federating status in nodeinfo
-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 ee14cfd6b..09cd65b78 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 f6147c286..4edcdaf60 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])