diff options
author | William Pitcock <nenolod@dereferenced.org> | 2018-11-17 21:01:19 +0000 |
---|---|---|
committer | William Pitcock <nenolod@dereferenced.org> | 2018-11-17 21:01:19 +0000 |
commit | b1a6e8d80d47efdea5110e9d86e080a16b5aeaa8 (patch) | |
tree | 4d4b9d06f5f2748706ca812583ae9b8b870df800 | |
parent | 0d1375f2746eb927e516064df3fd9fd0ee7e9ff8 (diff) | |
download | pleroma-b1a6e8d80d47efdea5110e9d86e080a16b5aeaa8.tar.gz pleroma-b1a6e8d80d47efdea5110e9d86e080a16b5aeaa8.zip |
test: add sanity tests for federator handling of AP docs
-rw-r--r-- | test/web/federator_test.exs | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/test/web/federator_test.exs b/test/web/federator_test.exs index c709d1181..1d48931b5 100644 --- a/test/web/federator_test.exs +++ b/test/web/federator_test.exs @@ -61,4 +61,42 @@ defmodule Pleroma.Web.FederatorTest do Pleroma.Config.put([:instance, :allow_relay], true) end end + + describe "Receive an activity" do + test "successfully processes incoming AP docs with correct origin" do + params = %{ + "@context" => "https://www.w3.org/ns/activitystreams", + "actor" => "http://mastodon.example.org/users/admin", + "type" => "Create", + "id" => "http://mastodon.example.org/users/admin/activities/1", + "object" => %{ + "type" => "Note", + "content" => "hi world!", + "id" => "http://mastodon.example.org/users/admin/objects/1", + "attributedTo" => "http://mastodon.example.org/users/admin", + }, + "to" => ["https://www.w3.org/ns/activitystreams#Public"] + } + + {:ok, _activity} = Federator.handle(:incoming_ap_doc, params) + end + + test "rejects incoming AP docs with incorrect origin" do + params = %{ + "@context" => "https://www.w3.org/ns/activitystreams", + "actor" => "https://niu.moe/users/rye", + "type" => "Create", + "id" => "http://mastodon.example.org/users/admin/activities/1", + "object" => %{ + "type" => "Note", + "content" => "hi world!", + "id" => "http://mastodon.example.org/users/admin/objects/1", + "attributedTo" => "http://mastodon.example.org/users/admin", + }, + "to" => ["https://www.w3.org/ns/activitystreams#Public"] + } + + :error = Federator.handle(:incoming_ap_doc, params) + end + end end |