summaryrefslogtreecommitdiff
path: root/test/object
diff options
context:
space:
mode:
authorAlexander Strizhakov <alex.strizhakov@gmail.com>2020-02-29 11:34:50 +0300
committerAlexander Strizhakov <alex.strizhakov@gmail.com>2020-02-29 11:34:50 +0300
commit814b275af7748df6bd11dfc6be1b4efce8d5ae70 (patch)
treee18b30dfa6eb020e593dbe1cc0e649da3e6ed394 /test/object
parent6b012ddd69aec0f85c22ad91dbb76e05f2edaf58 (diff)
parentaad057a2d6baaa342f47f55d330f0731277dac06 (diff)
downloadpleroma-814b275af7748df6bd11dfc6be1b4efce8d5ae70.tar.gz
pleroma-814b275af7748df6bd11dfc6be1b4efce8d5ae70.zip
Merge branch 'develop' into gun
Diffstat (limited to 'test/object')
-rw-r--r--test/object/fetcher_test.exs25
1 files changed, 25 insertions, 0 deletions
diff --git a/test/object/fetcher_test.exs b/test/object/fetcher_test.exs
index 2aad7a588..3afd35648 100644
--- a/test/object/fetcher_test.exs
+++ b/test/object/fetcher_test.exs
@@ -26,6 +26,31 @@ defmodule Pleroma.Object.FetcherTest do
:ok
end
+ describe "max thread distance restriction" do
+ @ap_id "http://mastodon.example.org/@admin/99541947525187367"
+
+ clear_config([:instance, :federation_incoming_replies_max_depth])
+
+ test "it returns thread depth exceeded error if thread depth is exceeded" do
+ Pleroma.Config.put([:instance, :federation_incoming_replies_max_depth], 0)
+
+ assert {:error, "Max thread distance exceeded."} =
+ Fetcher.fetch_object_from_id(@ap_id, depth: 1)
+ end
+
+ test "it fetches object if max thread depth is restricted to 0 and depth is not specified" do
+ Pleroma.Config.put([:instance, :federation_incoming_replies_max_depth], 0)
+
+ assert {:ok, _} = Fetcher.fetch_object_from_id(@ap_id)
+ end
+
+ test "it fetches object if requested depth does not exceed max thread depth" do
+ Pleroma.Config.put([:instance, :federation_incoming_replies_max_depth], 10)
+
+ assert {:ok, _} = Fetcher.fetch_object_from_id(@ap_id, depth: 10)
+ end
+ end
+
describe "actor origin containment" do
test "it rejects objects with a bogus origin" do
{:error, _} = Fetcher.fetch_object_from_id("https://info.pleroma.site/activity.json")