diff options
author | tusooa <tusooa@kazv.moe> | 2022-12-15 11:20:00 -0500 |
---|---|---|
committer | tusooa <tusooa@kazv.moe> | 2022-12-15 11:57:45 -0500 |
commit | 2554028097b3dbc1644269f7d5612152748d3c7f (patch) | |
tree | 16a3d7a9064e4597d128aa053aa5de24d262e8a8 /test | |
parent | dc7efcd08b822e84e893775084d3b35288462264 (diff) | |
download | pleroma-2554028097b3dbc1644269f7d5612152748d3c7f.tar.gz pleroma-2554028097b3dbc1644269f7d5612152748d3c7f.zip |
Make SimplePolicy Update-aware
This is inspired by https://akkoma.dev/AkkomaGang/akkoma/commit/d5828f1c5e54ca236e50ef7837bfba3d1e665854
Diffstat (limited to 'test')
-rw-r--r-- | test/pleroma/web/activity_pub/mrf/simple_policy_test.exs | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/test/pleroma/web/activity_pub/mrf/simple_policy_test.exs b/test/pleroma/web/activity_pub/mrf/simple_policy_test.exs index 674b506c3..57fc00af5 100644 --- a/test/pleroma/web/activity_pub/mrf/simple_policy_test.exs +++ b/test/pleroma/web/activity_pub/mrf/simple_policy_test.exs @@ -57,6 +57,16 @@ defmodule Pleroma.Web.ActivityPub.MRF.SimplePolicyTest do assert SimplePolicy.filter(local_message) == {:ok, local_message} end + + test "works with Updates" do + clear_config([:mrf_simple, :media_removal], [{"remote.instance", "Some reason"}]) + media_message = build_media_message(type: "Update") + + assert SimplePolicy.filter(media_message) == + {:ok, + media_message + |> Map.put("object", Map.delete(media_message["object"], "attachment"))} + end end describe "when :media_nsfw" do @@ -90,12 +100,20 @@ defmodule Pleroma.Web.ActivityPub.MRF.SimplePolicyTest do assert SimplePolicy.filter(local_message) == {:ok, local_message} end + + test "works with Updates" do + clear_config([:mrf_simple, :media_nsfw], [{"remote.instance", "Whetever"}]) + media_message = build_media_message(type: "Update") + + assert SimplePolicy.filter(media_message) == + {:ok, put_in(media_message, ["object", "sensitive"], true)} + end end - defp build_media_message do + defp build_media_message(opts \\ []) do %{ "actor" => "https://remote.instance/users/bob", - "type" => "Create", + "type" => opts[:type] || "Create", "object" => %{ "attachment" => [%{}], "tag" => ["foo"], |