diff options
| -rw-r--r-- | lib/pleroma/web/activity_pub/side_effects.ex | 1 | ||||
| -rw-r--r-- | test/pleroma/web/common_api_test.exs | 14 | 
2 files changed, 15 insertions, 0 deletions
diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index d421ca7af..0fff5faf2 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -306,6 +306,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do        streamables =          [[actor, recipient], [recipient, actor]] +        |> Enum.uniq()          |> Enum.map(fn [user, other_user] ->            if user.local do              {:ok, chat} = Chat.bump_or_create(user.id, other_user.ap_id) diff --git a/test/pleroma/web/common_api_test.exs b/test/pleroma/web/common_api_test.exs index f5d09f396..d8dc90173 100644 --- a/test/pleroma/web/common_api_test.exs +++ b/test/pleroma/web/common_api_test.exs @@ -95,6 +95,20 @@ defmodule Pleroma.Web.CommonAPITest do    describe "posting chat messages" do      setup do: clear_config([:instance, :chat_limit]) +    test "it posts a self-chat" do +      author = insert(:user) +      recipient = author + +      {:ok, activity} = +        CommonAPI.post_chat_message( +          author, +          recipient, +          "remember to buy milk when milk truk arive" +        ) + +      assert activity.data["type"] == "Create" +    end +      test "it posts a chat message without content but with an attachment" do        author = insert(:user)        recipient = insert(:user)  | 
