diff options
| author | kaniini <ariadne@dereferenced.org> | 2019-07-14 16:39:17 +0000 | 
|---|---|---|
| committer | kaniini <ariadne@dereferenced.org> | 2019-07-14 16:39:17 +0000 | 
| commit | cef4337f950cca5ca9c9dec313efeb8f43aa5a40 (patch) | |
| tree | ccf4588a45dc39ecbb37eecb4981e6d946875e8e /test | |
| parent | 1589b170e80fa33ffcfd7fd85aec115d7765375d (diff) | |
| parent | 2592934480dd704033de013491373c9dc1d173a2 (diff) | |
| download | pleroma-cef4337f950cca5ca9c9dec313efeb8f43aa5a40.tar.gz pleroma-cef4337f950cca5ca9c9dec313efeb8f43aa5a40.zip  | |
Merge branch 'bugfix/llal-object-containment' into 'develop'
Object.Fetcher: Handle error on Containment.contain_origin/2
See merge request pleroma/pleroma!1414
Diffstat (limited to 'test')
| -rw-r--r-- | test/object/fetcher_test.exs | 22 | ||||
| -rw-r--r-- | test/support/http_request_mock.ex | 36 | 
2 files changed, 55 insertions, 3 deletions
diff --git a/test/object/fetcher_test.exs b/test/object/fetcher_test.exs index 3b666e0d1..56a9d775f 100644 --- a/test/object/fetcher_test.exs +++ b/test/object/fetcher_test.exs @@ -9,6 +9,7 @@ defmodule Pleroma.Object.FetcherTest do    alias Pleroma.Object    alias Pleroma.Object.Fetcher    import Tesla.Mock +  import Mock    setup do      mock(fn @@ -26,16 +27,31 @@ defmodule Pleroma.Object.FetcherTest do    end    describe "actor origin containment" do -    test "it rejects objects with a bogus origin" do +    test_with_mock "it rejects objects with a bogus origin", +                   Pleroma.Web.OStatus, +                   [:passthrough], +                   [] do        {:error, _} = Fetcher.fetch_object_from_id("https://info.pleroma.site/activity.json") + +      refute called(Pleroma.Web.OStatus.fetch_activity_from_url(:_))      end -    test "it rejects objects when attributedTo is wrong (variant 1)" do +    test_with_mock "it rejects objects when attributedTo is wrong (variant 1)", +                   Pleroma.Web.OStatus, +                   [:passthrough], +                   [] do        {:error, _} = Fetcher.fetch_object_from_id("https://info.pleroma.site/activity2.json") + +      refute called(Pleroma.Web.OStatus.fetch_activity_from_url(:_))      end -    test "it rejects objects when attributedTo is wrong (variant 2)" do +    test_with_mock "it rejects objects when attributedTo is wrong (variant 2)", +                   Pleroma.Web.OStatus, +                   [:passthrough], +                   [] do        {:error, _} = Fetcher.fetch_object_from_id("https://info.pleroma.site/activity3.json") + +      refute called(Pleroma.Web.OStatus.fetch_activity_from_url(:_))      end    end diff --git a/test/support/http_request_mock.ex b/test/support/http_request_mock.ex index ff6bb78f9..7811f7807 100644 --- a/test/support/http_request_mock.ex +++ b/test/support/http_request_mock.ex @@ -879,6 +879,42 @@ defmodule HttpRequestMock do       }}    end +  def get("https://info.pleroma.site/activity.json", _, _, Accept: "application/activity+json") do +    {:ok, +     %Tesla.Env{ +       status: 200, +       body: File.read!("test/fixtures/tesla_mock/https__info.pleroma.site_activity.json") +     }} +  end + +  def get("https://info.pleroma.site/activity.json", _, _, _) do +    {:ok, %Tesla.Env{status: 404, body: ""}} +  end + +  def get("https://info.pleroma.site/activity2.json", _, _, Accept: "application/activity+json") do +    {:ok, +     %Tesla.Env{ +       status: 200, +       body: File.read!("test/fixtures/tesla_mock/https__info.pleroma.site_activity2.json") +     }} +  end + +  def get("https://info.pleroma.site/activity2.json", _, _, _) do +    {:ok, %Tesla.Env{status: 404, body: ""}} +  end + +  def get("https://info.pleroma.site/activity3.json", _, _, Accept: "application/activity+json") do +    {:ok, +     %Tesla.Env{ +       status: 200, +       body: File.read!("test/fixtures/tesla_mock/https__info.pleroma.site_activity3.json") +     }} +  end + +  def get("https://info.pleroma.site/activity3.json", _, _, _) do +    {:ok, %Tesla.Env{status: 404, body: ""}} +  end +    def get(url, query, body, headers) do      {:error,       "Not implemented the mock response for get #{inspect(url)}, #{query}, #{inspect(body)}, #{  | 
