Skip to content
Snippets Groups Projects
Commit dca6bee2 authored by Karen Konou's avatar Karen Konou
Browse files

Rename test, add check for follower collection when delisting

parent d943c902
Branches
No related tags found
No related merge requests found
......@@ -10,17 +10,22 @@ defmodule Pleroma.Web.ActivityPub.MRF.HellthreadPolicy do
delist_threshold = Pleroma.Config.get([:mrf_hellthread, :delist_threshold])
follower_collection = User.get_cached_by_ap_id(message["actor"]).follower_address
follower_collection? = Enum.member?(message["to"] ++ message["cc"], follower_collection)
message =
with {:public, recipients} <- get_recipient_count(message) do
if recipients > delist_threshold and delist_threshold > 0 do
case recipients = get_recipient_count(message) do
{:public, _} when follower_collection? and recipients > delist_threshold ->
message
|> Map.put("to", [follower_collection])
|> Map.put("cc", ["https://www.w3.org/ns/activitystreams#Public"])
else
{:public, _} when recipients > delist_threshold ->
message
|> Map.put("to", [])
|> Map.put("cc", ["https://www.w3.org/ns/activitystreams#Public"])
_ ->
message
end
else
_ -> message
end
{:ok, message}
......
......@@ -41,7 +41,7 @@ defmodule Pleroma.Web.ActivityPub.MRF.HellthreadPolicyTest do
assert "https://www.w3.org/ns/activitystreams#Public" in message["cc"]
end
test "threshold test", %{message: message} do
test "excludes follower collection and public URI from threshold count", %{message: message} do
Pleroma.Config.put([:mrf_hellthread], %{delist_threshold: 0, reject_threshold: 3})
{:ok, _} = filter(message)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment