diff options
author | lain <lain@soykaf.club> | 2019-08-02 11:55:41 +0200 |
---|---|---|
committer | lain <lain@soykaf.club> | 2019-08-02 11:55:41 +0200 |
commit | f88560accd801ac88c60344cef93ef00cf136069 (patch) | |
tree | d74e2ef97428b9f64a66fb253b3c7baffab480f1 /test | |
parent | fd4b7239cd6f44a25c9aa4195750e94e0612a3b1 (diff) | |
download | pleroma-f88560accd801ac88c60344cef93ef00cf136069.tar.gz |
Conversations: Add recipient list to conversation participation.
This enables to address the same group of people every time.
Diffstat (limited to 'test')
-rw-r--r-- | test/conversation/participation_test.exs | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/test/conversation/participation_test.exs b/test/conversation/participation_test.exs index 2a03e5d67..4a3c397bd 100644 --- a/test/conversation/participation_test.exs +++ b/test/conversation/participation_test.exs @@ -8,6 +8,36 @@ defmodule Pleroma.Conversation.ParticipationTest do alias Pleroma.Conversation.Participation alias Pleroma.Web.CommonAPI + test "for a new conversation, it sets the recipents of the participation" do + user = insert(:user) + other_user = insert(:user) + third_user = insert(:user) + + {:ok, activity} = + CommonAPI.post(user, %{"status" => "Hey @#{other_user.nickname}.", "visibility" => "direct"}) + + [participation] = Participation.for_user(user) + participation = Pleroma.Repo.preload(participation, :recipients) + + assert length(participation.recipients) == 2 + assert user in participation.recipients + assert other_user in participation.recipients + + # Mentioning another user in the same conversation will not add a new recipients. + + {:ok, _activity} = + CommonAPI.post(user, %{ + "in_reply_to_status_id" => activity.id, + "status" => "Hey @#{third_user.nickname}.", + "visibility" => "direct" + }) + + [participation] = Participation.for_user(user) + participation = Pleroma.Repo.preload(participation, :recipients) + + assert length(participation.recipients) == 2 + end + test "it creates a participation for a conversation and a user" do user = insert(:user) conversation = insert(:conversation) |