Browse Source

NodeInfo: Return safe_dm_mentions feature flag.

tags/v1.1.4
lain 5 years ago
parent
commit
e2afce34b6
2 changed files with 26 additions and 0 deletions
  1. +3
    -0
      lib/pleroma/web/nodeinfo/nodeinfo_controller.ex
  2. +23
    -0
      test/web/node_info_test.exs

+ 3
- 0
lib/pleroma/web/nodeinfo/nodeinfo_controller.ex View File

@@ -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)


+ 23
- 0
test/web/node_info_test.exs View File

@@ -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

Loading…
Cancel
Save