diff options
author | lambda <lain@soykaf.club> | 2019-03-22 11:03:56 +0000 |
---|---|---|
committer | lambda <lain@soykaf.club> | 2019-03-22 11:03:56 +0000 |
commit | fee360e581d9aced145d21429eba5a63b3f682d1 (patch) | |
tree | 63bd78b46a180f5b5a68a9550273679553ece10e | |
parent | e1a854145078c748fe8c998b5ccbcc4cd11c4b23 (diff) | |
parent | e2afce34b68d88ec8e1ff624fe0a245fd0726fee (diff) | |
download | pleroma-fee360e581d9aced145d21429eba5a63b3f682d1.tar.gz |
Merge branch 'safe-mentions' into 'develop'
NodeInfo: Return safe_dm_mentions feature flag.
See merge request pleroma/pleroma!964
-rw-r--r-- | lib/pleroma/web/nodeinfo/nodeinfo_controller.ex | 3 | ||||
-rw-r--r-- | test/web/node_info_test.exs | 23 |
2 files changed, 26 insertions, 0 deletions
diff --git a/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex b/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex index 8c775ce24..216a962bd 100644 --- a/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex +++ b/lib/pleroma/web/nodeinfo/nodeinfo_controller.ex @@ -124,6 +124,9 @@ defmodule Pleroma.Web.Nodeinfo.NodeinfoController do end, if Keyword.get(instance, :allow_relay) do "relay" + end, + if Keyword.get(instance, :safe_dm_mentions) do + "safe_dm_mentions" end ] |> Enum.filter(& &1) diff --git a/test/web/node_info_test.exs b/test/web/node_info_test.exs index 038feecc1..2fc42b7cc 100644 --- a/test/web/node_info_test.exs +++ b/test/web/node_info_test.exs @@ -108,4 +108,27 @@ defmodule Pleroma.Web.NodeInfoTest do assert result = json_response(conn, 200) assert Pleroma.Application.repository() == result["software"]["repository"] end + + test "it returns the safe_dm_mentions feature if enabled", %{conn: conn} do + option = Pleroma.Config.get([:instance, :safe_dm_mentions]) + Pleroma.Config.put([:instance, :safe_dm_mentions], true) + + response = + conn + |> get("/nodeinfo/2.1.json") + |> json_response(:ok) + + assert "safe_dm_mentions" in response["metadata"]["features"] + + Pleroma.Config.put([:instance, :safe_dm_mentions], false) + + response = + conn + |> get("/nodeinfo/2.1.json") + |> json_response(:ok) + + refute "safe_dm_mentions" in response["metadata"]["features"] + + Pleroma.Config.put([:instance, :safe_dm_mentions], option) + end end |