diff options
author | William Pitcock <nenolod@dereferenced.org> | 2018-11-17 20:31:20 +0000 |
---|---|---|
committer | William Pitcock <nenolod@dereferenced.org> | 2018-11-17 20:31:20 +0000 |
commit | 55640c4804d1fe1c39b155f8acd5f820425fb7f6 (patch) | |
tree | dcf20311284ef4737def960bcb1e46a374cfb17b | |
parent | dc1d8e13b483d6e5df4ea6432aa3e37971bb3fb1 (diff) | |
download | pleroma-55640c4804d1fe1c39b155f8acd5f820425fb7f6.tar.gz |
tests: add a test to verify the general fake direction protection works in all cases
-rw-r--r-- | test/fixtures/httpoison_mock/https__info.pleroma.site_activity4.json | 13 | ||||
-rw-r--r-- | test/support/httpoison_mock.ex | 8 | ||||
-rw-r--r-- | test/web/activity_pub/transmogrifier_test.exs | 7 |
3 files changed, 28 insertions, 0 deletions
diff --git a/test/fixtures/httpoison_mock/https__info.pleroma.site_activity4.json b/test/fixtures/httpoison_mock/https__info.pleroma.site_activity4.json new file mode 100644 index 000000000..57a73b12a --- /dev/null +++ b/test/fixtures/httpoison_mock/https__info.pleroma.site_activity4.json @@ -0,0 +1,13 @@ +{ + "@context": "https://www.w3.org/ns/activitystreams", + "attributedTo": "http://mastodon.example.org/users/admin", + "attachment": [], + "content": "<p>this post was not actually written by Haelwenn</p>", + "id": "http://mastodon.example.org/users/admin/activities/1234", + "published": "2018-09-01T22:15:00Z", + "tag": [], + "to": [ + "https://www.w3.org/ns/activitystreams#Public" + ], + "type": "Note" +} diff --git a/test/support/httpoison_mock.ex b/test/support/httpoison_mock.ex index e3310bb5d..0be09b6ce 100644 --- a/test/support/httpoison_mock.ex +++ b/test/support/httpoison_mock.ex @@ -56,6 +56,14 @@ defmodule HTTPoisonMock do }} end + def get("https://info.pleroma.site/activity4.json", _, _) do + {:ok, + %Response{ + status_code: 200, + body: File.read!("test/fixtures/httpoison_mock/https__info.pleroma.site_activity4.json") + }} + end + def get("https://info.pleroma.site/actor.json", _, _) do {:ok, %Response{ diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs index f8a82dd5b..9174d9b76 100644 --- a/test/web/activity_pub/transmogrifier_test.exs +++ b/test/web/activity_pub/transmogrifier_test.exs @@ -967,5 +967,12 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do {:error, _} = User.get_or_fetch_by_ap_id("https://n1u.moe/users/rye") end + + test "all objects with fake directions are rejected by the object fetcher" do + {:error, _} = + ActivityPub.fetch_and_contain_remote_object_from_id( + "https://info.pleroma.site/activity4.json" + ) + end end end |