diff options
author | Roger Braun <roger@rogerbraun.net> | 2017-05-07 14:45:37 +0200 |
---|---|---|
committer | Roger Braun <roger@rogerbraun.net> | 2017-05-07 14:45:37 +0200 |
commit | a41aa4e4898660fffb9a54070d16e2c3a5373d71 (patch) | |
tree | 0046a2ebca32a257f127888f3068e6ff9dffcca4 /test | |
parent | 95ab0dc3c5ea63048a98b5fb594d0163249be822 (diff) | |
download | pleroma-a41aa4e4898660fffb9a54070d16e2c3a5373d71.tar.gz |
Federate follow salmons.
Diffstat (limited to 'test')
-rw-r--r-- | test/web/ostatus/activity_representer_test.exs | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/test/web/ostatus/activity_representer_test.exs b/test/web/ostatus/activity_representer_test.exs index 12c9bbaa2..af936b57c 100644 --- a/test/web/ostatus/activity_representer_test.exs +++ b/test/web/ostatus/activity_representer_test.exs @@ -124,6 +124,7 @@ defmodule Pleroma.Web.OStatus.ActivityRepresenterTest do user = insert(:user) {:ok, like, _note} = ActivityPub.like(user, note) + # TODO: Are these the correct dates? updated_at = like.updated_at |> NaiveDateTime.to_iso8601 inserted_at = like.inserted_at @@ -155,6 +156,49 @@ defmodule Pleroma.Web.OStatus.ActivityRepresenterTest do assert clean(res) == clean(expected) end + test "a follow activity" do + follower = insert(:user) + followed = insert(:user) + {:ok, activity} = ActivityPub.insert(%{ + "type" => "Follow", + "actor" => follower.ap_id, + "object" => followed.ap_id, + "to" => [followed.ap_id] + }) + + + # TODO: Are these the correct dates? + updated_at = activity.updated_at + |> NaiveDateTime.to_iso8601 + inserted_at = activity.inserted_at + |> NaiveDateTime.to_iso8601 + + tuple = ActivityRepresenter.to_simple_form(activity, follower) + + refute is_nil(tuple) + + res = :xmerl.export_simple_content(tuple, :xmerl_xml) |> IO.iodata_to_binary + + expected = """ + <activity:object-type>http://activitystrea.ms/schema/1.0/activity</activity:object-type> + <activity:verb>http://activitystrea.ms/schema/1.0/follow</activity:verb> + <id>#{activity.data["id"]}</id> + <title>#{follower.nickname} started following #{activity.data["object"]}</title> + <content type="html"> #{follower.nickname} started following #{activity.data["object"]}</content> + <published>#{inserted_at}</published> + <updated>#{updated_at}</updated> + <activity:object> + <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type> + <id>#{activity.data["object"]}</id> + <uri>#{activity.data["object"]}</uri> + </activity:object> + <link rel="self" type="application/atom+xml" href="#{activity.data["id"]}"/> + <link rel="mentioned" ostatus:object-type="http://activitystrea.ms/schema/1.0/person" href="#{activity.data["object"]}"/> + """ + + assert clean(res) == clean(expected) + end + test "an unknown activity" do tuple = ActivityRepresenter.to_simple_form(%Activity{}, nil) assert is_nil(tuple) |