diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/fixtures/mastodon-post-activity-contentmap.json | 67 | ||||
| -rw-r--r-- | test/web/activity_pub/transmogrifier_test.exs | 10 | 
2 files changed, 77 insertions, 0 deletions
| diff --git a/test/fixtures/mastodon-post-activity-contentmap.json b/test/fixtures/mastodon-post-activity-contentmap.json new file mode 100644 index 000000000..2e94380b6 --- /dev/null +++ b/test/fixtures/mastodon-post-activity-contentmap.json @@ -0,0 +1,67 @@ +{ +    "@context": [ +        "https://www.w3.org/ns/activitystreams", +        "https://w3id.org/security/v1", +        { +            "Emoji": "toot:Emoji", +            "Hashtag": "as:Hashtag", +            "atomUri": "ostatus:atomUri", +            "conversation": "ostatus:conversation", +            "inReplyToAtomUri": "ostatus:inReplyToAtomUri", +            "manuallyApprovesFollowers": "as:manuallyApprovesFollowers", +            "movedTo": "as:movedTo", +            "ostatus": "http://ostatus.org#", +            "sensitive": "as:sensitive", +            "toot": "http://joinmastodon.org/ns#" +        } +    ], +    "actor": "http://mastodon.example.org/users/admin", +    "cc": [ +        "http://mastodon.example.org/users/admin/followers", +        "http://localtesting.pleroma.lol/users/lain" +    ], +    "id": "http://mastodon.example.org/users/admin/statuses/99512778738411822/activity", +    "nickname": "lain", +    "object": { +        "atomUri": "http://mastodon.example.org/users/admin/statuses/99512778738411822", +        "attachment": [], +        "attributedTo": "http://mastodon.example.org/users/admin", +        "cc": [ +            "http://mastodon.example.org/users/admin/followers", +            "http://localtesting.pleroma.lol/users/lain" +        ], +        "contentMap": { +            "en": "<p><span class=\"h-card\"><a href=\"http://localtesting.pleroma.lol/users/lain\" class=\"u-url mention\">@<span>lain</span></a></span></p>" +        }, +        "conversation": "tag:mastodon.example.org,2018-02-12:objectId=20:objectType=Conversation", +        "id": "http://mastodon.example.org/users/admin/statuses/99512778738411822", +        "inReplyTo": null, +        "inReplyToAtomUri": null, +        "published": "2018-02-12T14:08:20Z", +        "sensitive": true, +        "summary": "cw", +        "tag": [ +            { +                "href": "http://localtesting.pleroma.lol/users/lain", +                "name": "@lain@localtesting.pleroma.lol", +                "type": "Mention" +            } +        ], +        "to": [ +            "https://www.w3.org/ns/activitystreams#Public" +        ], +        "type": "Note", +        "url": "http://mastodon.example.org/@admin/99512778738411822" +    }, +    "published": "2018-02-12T14:08:20Z", +    "signature": { +        "created": "2018-02-12T14:08:20Z", +        "creator": "http://mastodon.example.org/users/admin#main-key", +        "signatureValue": "rnNfcopkc6+Ju73P806popcfwrK9wGYHaJVG1/ZvrlEbWVDzaHjkXqj9Q3/xju5l8CSn9tvSgCCtPFqZsFQwn/pFIFUcw7ZWB2xi4bDm3NZ3S4XQ8JRaaX7og5hFxAhWkGhJhAkfxVnOg2hG+w2d/7d7vRVSC1vo5ip4erUaA/PkWusZvPIpxnRWoXaxJsFmVx0gJgjpJkYDyjaXUlp+jmaoseeZ4EPQUWqHLKJ59PRG0mg8j2xAjYH9nQaN14qMRmTGPxY8gfv/CUFcatA+8VJU9KEsJkDAwLVvglydNTLGrxpAJU78a2eaht0foV43XUIZGe3DKiJPgE+UOKGCJw==", +        "type": "RsaSignature2017" +    }, +    "to": [ +        "https://www.w3.org/ns/activitystreams#Public" +    ], +    "type": "Create" +} diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs index 7e771b9f8..3b3a0c703 100644 --- a/test/web/activity_pub/transmogrifier_test.exs +++ b/test/web/activity_pub/transmogrifier_test.exs @@ -102,6 +102,16 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do        assert Enum.at(data["object"]["tag"], 2) == "moo"      end +    test "it works for incoming notices with contentMap" do +      data = +        File.read!("test/fixtures/mastodon-post-activity-contentmap.json") |> Poison.decode!() + +      {:ok, %Activity{data: data, local: false}} = Transmogrifier.handle_incoming(data) + +      assert data["object"]["content"] == +               "<p><span class=\"h-card\"><a href=\"http://localtesting.pleroma.lol/users/lain\" class=\"u-url mention\">@<span>lain</span></a></span></p>" +    end +      test "it works for incoming follow requests" do        user = insert(:user) | 
