diff options
author | rinpatch <rinpatch@sdf.org> | 2020-07-02 10:17:51 +0000 |
---|---|---|
committer | rinpatch <rinpatch@sdf.org> | 2020-07-02 10:17:51 +0000 |
commit | 4c044f62258b33a95b8281e1eb42a5e0ce47d42d (patch) | |
tree | b8bc7c42d007ff563793bb61189e2bb796f946a9 /test/object | |
parent | b0439df1b529301c8f07097bedb1cba2602a4143 (diff) | |
parent | ce92e6e5ce24a68bedd744c01cc1a99f01c4fa91 (diff) | |
download | pleroma-4c044f62258b33a95b8281e1eb42a5e0ce47d42d.tar.gz |
Merge branch 'fetcher-fixes' into 'develop'
Don't fail fetching when the user in a replied-to message can't be fetched.
See merge request pleroma/pleroma!2711
Diffstat (limited to 'test/object')
-rw-r--r-- | test/object/fetcher_test.exs | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/test/object/fetcher_test.exs b/test/object/fetcher_test.exs index c06e91f12..d9098ea1b 100644 --- a/test/object/fetcher_test.exs +++ b/test/object/fetcher_test.exs @@ -26,6 +26,46 @@ defmodule Pleroma.Object.FetcherTest do :ok end + describe "error cases" do + setup do + mock(fn + %{method: :get, url: "https://social.sakamoto.gq/notice/9wTkLEnuq47B25EehM"} -> + %Tesla.Env{ + status: 200, + body: File.read!("test/fixtures/fetch_mocks/9wTkLEnuq47B25EehM.json") + } + + %{method: :get, url: "https://social.sakamoto.gq/users/eal"} -> + %Tesla.Env{ + status: 200, + body: File.read!("test/fixtures/fetch_mocks/eal.json") + } + + %{method: :get, url: "https://busshi.moe/users/tuxcrafting/statuses/104410921027210069"} -> + %Tesla.Env{ + status: 200, + body: File.read!("test/fixtures/fetch_mocks/104410921027210069.json") + } + + %{method: :get, url: "https://busshi.moe/users/tuxcrafting"} -> + %Tesla.Env{ + status: 500 + } + end) + + :ok + end + + @tag capture_log: true + test "it works when fetching the OP actor errors out" do + # Here we simulate a case where the author of the OP can't be read + assert {:ok, _} = + Fetcher.fetch_object_from_id( + "https://social.sakamoto.gq/notice/9wTkLEnuq47B25EehM" + ) + end + end + describe "max thread distance restriction" do @ap_id "http://mastodon.example.org/@admin/99541947525187367" setup do: clear_config([:instance, :federation_incoming_replies_max_depth]) |