forked from YokaiRick/akkoma
Add current user to mentioned
This commit is contained in:
parent
e116e55cab
commit
651a1d64b5
6 changed files with 14 additions and 9 deletions
|
@ -155,7 +155,7 @@ def to_map(
|
|||
repeated = opts[:for] && opts[:for].ap_id in (object["announcements"] || [])
|
||||
pinned = activity.id in user.info.pinned_activities
|
||||
|
||||
mentions = opts[:mentioned] || []
|
||||
mentions = get_mentioned_users(opts[:mentioned] || [], user)
|
||||
|
||||
attentions =
|
||||
activity.recipients
|
||||
|
@ -224,6 +224,10 @@ def conversation_id(activity) do
|
|||
end
|
||||
end
|
||||
|
||||
defp get_mentioned_users(mentioned, user) do
|
||||
mentioned ++ [user]
|
||||
end
|
||||
|
||||
defp to_boolean(false) do
|
||||
false
|
||||
end
|
||||
|
|
|
@ -672,12 +672,13 @@ test "get recipients from activity" do
|
|||
"status" => "hey @#{addressed.nickname} @#{addressed_remote.nickname}"
|
||||
})
|
||||
|
||||
assert [addressed] == User.get_recipients_from_activity(activity)
|
||||
assert Enum.map([actor, addressed], & &1.ap_id) --
|
||||
Enum.map(User.get_recipients_from_activity(activity), & &1.ap_id) == []
|
||||
|
||||
{:ok, user} = User.follow(user, actor)
|
||||
{:ok, _user_two} = User.follow(user_two, actor)
|
||||
recipients = User.get_recipients_from_activity(activity)
|
||||
assert length(recipients) == 2
|
||||
assert length(recipients) == 3
|
||||
assert user in recipients
|
||||
assert addressed in recipients
|
||||
end
|
||||
|
|
|
@ -160,7 +160,7 @@ test "removes doubled 'to' recipients" do
|
|||
|
||||
assert activity.data["to"] == ["user1", "user2"]
|
||||
assert activity.actor == user.ap_id
|
||||
assert activity.recipients == ["user1", "user2"]
|
||||
assert activity.recipients == ["user1", "user2", user.ap_id]
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -147,7 +147,7 @@ test "posting a direct status", %{conn: conn} do
|
|||
|
||||
assert %{"id" => id, "visibility" => "direct"} = json_response(conn, 200)
|
||||
assert activity = Repo.get(Activity, id)
|
||||
assert activity.recipients == [user2.ap_id]
|
||||
assert activity.recipients == [user2.ap_id, user1.ap_id]
|
||||
assert activity.data["to"] == [user2.ap_id]
|
||||
assert activity.data["cc"] == []
|
||||
end
|
||||
|
|
|
@ -119,7 +119,9 @@ test "contains mentions" do
|
|||
|
||||
status = StatusView.render("status.json", %{activity: activity})
|
||||
|
||||
assert status.mentions == [AccountView.render("mention.json", %{user: user})]
|
||||
actor = Repo.get_by(User, ap_id: activity.actor)
|
||||
|
||||
assert status.mentions == Enum.map([user, actor], fn u -> AccountView.render("mention.json", %{user: u}) end)
|
||||
end
|
||||
|
||||
test "attachments" do
|
||||
|
|
|
@ -118,9 +118,7 @@ test "a create activity with a note" do
|
|||
expected = %{
|
||||
"activity_type" => "post",
|
||||
"attachments" => [],
|
||||
"attentions" => [
|
||||
UserView.render("show.json", %{user: other_user})
|
||||
],
|
||||
"attentions" => Enum.map([other_user, user], fn u -> UserView.render("show.json", %{user: u}) end),
|
||||
"created_at" => activity.data["object"]["published"] |> Utils.date_to_asctime(),
|
||||
"external_url" => activity.data["object"]["id"],
|
||||
"fave_num" => 0,
|
||||
|
|
Loading…
Reference in a new issue