diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/web/activity_pub/activity_pub_test.exs | 10 | ||||
-rw-r--r-- | test/web/twitter_api/representers/activity_representer_test.exs | 10 |
2 files changed, 17 insertions, 3 deletions
diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs index 2bdd439b0..570120484 100644 --- a/test/web/activity_pub/activity_pub_test.exs +++ b/test/web/activity_pub/activity_pub_test.exs @@ -1,7 +1,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do use Pleroma.DataCase alias Pleroma.Web.ActivityPub.ActivityPub - alias Pleroma.{Activity, Object} + alias Pleroma.{Activity, Object, User} alias Pleroma.Builders.ActivityBuilder import Pleroma.Factory @@ -124,7 +124,15 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do assert like_activity.data["actor"] == user.ap_id assert like_activity.data["type"] == "Like" assert like_activity.data["object"] == object.data["id"] + assert like_activity.data["to"] == [User.ap_followers(user)] assert object.data["like_count"] == 1 + assert object.data["likes"] == [user.ap_id] + + # Just return the original activity if the user already liked it. + {:ok, same_like_activity, object} = ActivityPub.like(user, object) + + assert like_activity == same_like_activity + assert object.data["likes"] == [user.ap_id] [note_activity] = Activity.all_by_object_ap_id(object.data["id"]) assert note_activity.data["object"]["like_count"] == 1 diff --git a/test/web/twitter_api/representers/activity_representer_test.exs b/test/web/twitter_api/representers/activity_representer_test.exs index 5673c1f0d..d1f9e00c8 100644 --- a/test/web/twitter_api/representers/activity_representer_test.exs +++ b/test/web/twitter_api/representers/activity_representer_test.exs @@ -11,11 +11,16 @@ defmodule Pleroma.Web.TwitterAPI.Representers.ActivityRepresenterTest do note_activity = insert(:note_activity) object = Object.get_by_ap_id(note_activity.data["object"]["id"]) - {:ok, like_activity, object} = ActivityPub.like(user, object) + {:ok, like_activity, _object} = ActivityPub.like(user, object) status = ActivityRepresenter.to_map(like_activity, %{user: user, liked_activity: note_activity}) assert status["id"] == like_activity.id assert status["in_reply_to_status_id"] == note_activity.id + + note_activity = Activity.get_by_ap_id(note_activity.data["id"]) + activity_actor = Repo.get_by(User, ap_id: note_activity.data["actor"]) + liked_status = ActivityRepresenter.to_map(note_activity, %{user: activity_actor, for: user}) + assert liked_status["favorited"] == true end test "an activity" do @@ -84,7 +89,8 @@ defmodule Pleroma.Web.TwitterAPI.Representers.ActivityRepresenterTest do "attentions" => [ UserRepresenter.to_map(mentioned_user, %{for: follower}) ], - "fave_num" => 5 + "fave_num" => 5, + "favorited" => false } assert ActivityRepresenter.to_map(activity, %{user: user, for: follower, mentioned: [mentioned_user]}) == expected_status |