ChatMessageReference -> Chat.MessageReference
This commit is contained in:
parent
137adef6e0
commit
ca0e6e702b
|
@ -2,7 +2,7 @@
|
|||
# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
|
||||
# SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
defmodule Pleroma.ChatMessageReference do
|
||||
defmodule Pleroma.Chat.MessageReference do
|
||||
@moduledoc """
|
||||
A reference that builds a relation between an AP chat message that a user can see and whether it has been seen
|
||||
by them, or should be displayed to them. Used to build the chat view that is presented to the user.
|
|
@ -7,7 +7,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do
|
|||
"""
|
||||
alias Pleroma.Activity
|
||||
alias Pleroma.Chat
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.Notification
|
||||
alias Pleroma.Object
|
||||
alias Pleroma.Repo
|
||||
|
@ -111,7 +111,7 @@ def handle(%{data: %{"type" => "Delete", "object" => deleted_object}} = object,
|
|||
Object.decrease_replies_count(in_reply_to)
|
||||
end
|
||||
|
||||
ChatMessageReference.delete_for_object(deleted_object)
|
||||
MessageReference.delete_for_object(deleted_object)
|
||||
|
||||
ActivityPub.stream_out(object)
|
||||
ActivityPub.stream_out_participations(deleted_object, user)
|
||||
|
@ -146,13 +146,13 @@ def handle_object_creation(%{"type" => "ChatMessage"} = object, meta) do
|
|||
|> Enum.each(fn [user, other_user] ->
|
||||
if user.local do
|
||||
{:ok, chat} = Chat.bump_or_create(user.id, other_user.ap_id)
|
||||
{:ok, cm_ref} = ChatMessageReference.create(chat, object, user.ap_id != actor.ap_id)
|
||||
{:ok, cm_ref} = MessageReference.create(chat, object, user.ap_id != actor.ap_id)
|
||||
|
||||
# We add a cache of the unread value here so that it
|
||||
# doesn't change when being streamed out
|
||||
chat =
|
||||
chat
|
||||
|> Map.put(:unread, ChatMessageReference.unread_count_for_chat(chat))
|
||||
|> Map.put(:unread, MessageReference.unread_count_for_chat(chat))
|
||||
|
||||
Streamer.stream(
|
||||
["user", "user:pleroma_chat"],
|
||||
|
|
|
@ -6,7 +6,7 @@ defmodule Pleroma.Web.MastodonAPI.NotificationView do
|
|||
use Pleroma.Web, :view
|
||||
|
||||
alias Pleroma.Activity
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.Notification
|
||||
alias Pleroma.Object
|
||||
alias Pleroma.User
|
||||
|
@ -15,7 +15,7 @@ defmodule Pleroma.Web.MastodonAPI.NotificationView do
|
|||
alias Pleroma.Web.MastodonAPI.AccountView
|
||||
alias Pleroma.Web.MastodonAPI.NotificationView
|
||||
alias Pleroma.Web.MastodonAPI.StatusView
|
||||
alias Pleroma.Web.PleromaAPI.ChatMessageReferenceView
|
||||
alias Pleroma.Web.PleromaAPI.Chat.MessageReferenceView
|
||||
|
||||
@parent_types ~w{Like Announce EmojiReact}
|
||||
|
||||
|
@ -139,9 +139,9 @@ defp put_chat_message(response, activity, reading_user, opts) do
|
|||
object = Object.normalize(activity)
|
||||
author = User.get_cached_by_ap_id(object.data["actor"])
|
||||
chat = Pleroma.Chat.get(reading_user.id, author.ap_id)
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
render_opts = Map.merge(opts, %{for: reading_user, chat_message_reference: cm_ref})
|
||||
chat_message_render = ChatMessageReferenceView.render("show.json", render_opts)
|
||||
chat_message_render = MessageReferenceView.render("show.json", render_opts)
|
||||
|
||||
Map.put(response, :chat_message, chat_message_render)
|
||||
end
|
||||
|
|
|
@ -6,14 +6,14 @@ defmodule Pleroma.Web.PleromaAPI.ChatController do
|
|||
|
||||
alias Pleroma.Activity
|
||||
alias Pleroma.Chat
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.Object
|
||||
alias Pleroma.Pagination
|
||||
alias Pleroma.Plugs.OAuthScopesPlug
|
||||
alias Pleroma.Repo
|
||||
alias Pleroma.User
|
||||
alias Pleroma.Web.CommonAPI
|
||||
alias Pleroma.Web.PleromaAPI.ChatMessageReferenceView
|
||||
alias Pleroma.Web.PleromaAPI.Chat.MessageReferenceView
|
||||
alias Pleroma.Web.PleromaAPI.ChatView
|
||||
|
||||
import Ecto.Query
|
||||
|
@ -46,13 +46,13 @@ def delete_message(%{assigns: %{user: %{id: user_id} = user}} = conn, %{
|
|||
message_id: message_id,
|
||||
id: chat_id
|
||||
}) do
|
||||
with %ChatMessageReference{} = cm_ref <-
|
||||
ChatMessageReference.get_by_id(message_id),
|
||||
with %MessageReference{} = cm_ref <-
|
||||
MessageReference.get_by_id(message_id),
|
||||
^chat_id <- cm_ref.chat_id |> to_string(),
|
||||
%Chat{user_id: ^user_id} <- Chat.get_by_id(chat_id),
|
||||
{:ok, _} <- remove_or_delete(cm_ref, user) do
|
||||
conn
|
||||
|> put_view(ChatMessageReferenceView)
|
||||
|> put_view(MessageReferenceView)
|
||||
|> render("show.json", chat_message_reference: cm_ref)
|
||||
else
|
||||
_e ->
|
||||
|
@ -71,7 +71,7 @@ defp remove_or_delete(
|
|||
|
||||
defp remove_or_delete(cm_ref, _) do
|
||||
cm_ref
|
||||
|> ChatMessageReference.delete()
|
||||
|> MessageReference.delete()
|
||||
end
|
||||
|
||||
def post_chat_message(
|
||||
|
@ -87,9 +87,9 @@ def post_chat_message(
|
|||
media_id: params[:media_id]
|
||||
),
|
||||
message <- Object.normalize(activity, false),
|
||||
cm_ref <- ChatMessageReference.for_chat_and_object(chat, message) do
|
||||
cm_ref <- MessageReference.for_chat_and_object(chat, message) do
|
||||
conn
|
||||
|> put_view(ChatMessageReferenceView)
|
||||
|> put_view(MessageReferenceView)
|
||||
|> render("show.json", for: user, chat_message_reference: cm_ref)
|
||||
end
|
||||
end
|
||||
|
@ -98,20 +98,20 @@ def mark_message_as_read(%{assigns: %{user: %{id: user_id} = user}} = conn, %{
|
|||
id: chat_id,
|
||||
message_id: message_id
|
||||
}) do
|
||||
with %ChatMessageReference{} = cm_ref <-
|
||||
ChatMessageReference.get_by_id(message_id),
|
||||
with %MessageReference{} = cm_ref <-
|
||||
MessageReference.get_by_id(message_id),
|
||||
^chat_id <- cm_ref.chat_id |> to_string(),
|
||||
%Chat{user_id: ^user_id} <- Chat.get_by_id(chat_id),
|
||||
{:ok, cm_ref} <- ChatMessageReference.mark_as_read(cm_ref) do
|
||||
{:ok, cm_ref} <- MessageReference.mark_as_read(cm_ref) do
|
||||
conn
|
||||
|> put_view(ChatMessageReferenceView)
|
||||
|> put_view(MessageReferenceView)
|
||||
|> render("show.json", for: user, chat_message_reference: cm_ref)
|
||||
end
|
||||
end
|
||||
|
||||
def mark_as_read(%{assigns: %{user: %{id: user_id}}} = conn, %{id: id}) do
|
||||
with %Chat{} = chat <- Repo.get_by(Chat, id: id, user_id: user_id),
|
||||
{_n, _} <- ChatMessageReference.set_all_seen_for_chat(chat) do
|
||||
{_n, _} <- MessageReference.set_all_seen_for_chat(chat) do
|
||||
conn
|
||||
|> put_view(ChatView)
|
||||
|> render("show.json", chat: chat)
|
||||
|
@ -122,11 +122,11 @@ def messages(%{assigns: %{user: %{id: user_id} = user}} = conn, %{id: id} = para
|
|||
with %Chat{} = chat <- Repo.get_by(Chat, id: id, user_id: user_id) do
|
||||
cm_refs =
|
||||
chat
|
||||
|> ChatMessageReference.for_chat_query()
|
||||
|> MessageReference.for_chat_query()
|
||||
|> Pagination.fetch_paginated(params |> stringify_keys())
|
||||
|
||||
conn
|
||||
|> put_view(ChatMessageReferenceView)
|
||||
|> put_view(MessageReferenceView)
|
||||
|> render("index.json", for: user, chat_message_references: cm_refs)
|
||||
else
|
||||
_ ->
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
|
||||
# SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
defmodule Pleroma.Web.PleromaAPI.ChatMessageReferenceView do
|
||||
defmodule Pleroma.Web.PleromaAPI.Chat.MessageReferenceView do
|
||||
use Pleroma.Web, :view
|
||||
|
||||
alias Pleroma.User
|
|
@ -6,24 +6,24 @@ defmodule Pleroma.Web.PleromaAPI.ChatView do
|
|||
use Pleroma.Web, :view
|
||||
|
||||
alias Pleroma.Chat
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.User
|
||||
alias Pleroma.Web.CommonAPI.Utils
|
||||
alias Pleroma.Web.MastodonAPI.AccountView
|
||||
alias Pleroma.Web.PleromaAPI.ChatMessageReferenceView
|
||||
alias Pleroma.Web.PleromaAPI.Chat.MessageReferenceView
|
||||
|
||||
def render("show.json", %{chat: %Chat{} = chat} = opts) do
|
||||
recipient = User.get_cached_by_ap_id(chat.recipient)
|
||||
|
||||
last_message = opts[:last_message] || ChatMessageReference.last_message_for_chat(chat)
|
||||
last_message = opts[:last_message] || MessageReference.last_message_for_chat(chat)
|
||||
|
||||
%{
|
||||
id: chat.id |> to_string(),
|
||||
account: AccountView.render("show.json", Map.put(opts, :user, recipient)),
|
||||
unread: Map.get(chat, :unread) || ChatMessageReference.unread_count_for_chat(chat),
|
||||
unread: Map.get(chat, :unread) || MessageReference.unread_count_for_chat(chat),
|
||||
last_message:
|
||||
last_message &&
|
||||
ChatMessageReferenceView.render("show.json", chat_message_reference: last_message),
|
||||
MessageReferenceView.render("show.json", chat_message_reference: last_message),
|
||||
updated_at: Utils.to_masto_date(chat.updated_at)
|
||||
}
|
||||
end
|
||||
|
|
|
@ -6,7 +6,7 @@ defmodule Pleroma.Web.Streamer do
|
|||
require Logger
|
||||
|
||||
alias Pleroma.Activity
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.Config
|
||||
alias Pleroma.Conversation.Participation
|
||||
alias Pleroma.Notification
|
||||
|
@ -187,7 +187,7 @@ defp do_stream(topic, %Notification{} = item)
|
|||
end)
|
||||
end
|
||||
|
||||
defp do_stream(topic, {user, %ChatMessageReference{} = cm_ref})
|
||||
defp do_stream(topic, {user, %MessageReference{} = cm_ref})
|
||||
when topic in ["user", "user:pleroma_chat"] do
|
||||
topic = "#{topic}:#{user.id}"
|
||||
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
|
||||
# SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
defmodule Pleroma.ChatMessageReferenceTest do
|
||||
defmodule Pleroma.Chat.MessageReferenceTest do
|
||||
use Pleroma.DataCase, async: true
|
||||
|
||||
alias Pleroma.Chat
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.Web.CommonAPI
|
||||
|
||||
import Pleroma.Factory
|
||||
|
@ -21,7 +21,7 @@ test "it returns the last message in a chat" do
|
|||
|
||||
{:ok, chat} = Chat.get_or_create(user.id, recipient.ap_id)
|
||||
|
||||
message = ChatMessageReference.last_message_for_chat(chat)
|
||||
message = MessageReference.last_message_for_chat(chat)
|
||||
|
||||
assert message.object.data["content"] == "ho"
|
||||
end
|
|
@ -8,7 +8,7 @@ defmodule Pleroma.Web.ActivityPub.SideEffectsTest do
|
|||
|
||||
alias Pleroma.Activity
|
||||
alias Pleroma.Chat
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.Notification
|
||||
alias Pleroma.Object
|
||||
alias Pleroma.Repo
|
||||
|
@ -391,7 +391,7 @@ test "it streams the created ChatMessage" do
|
|||
end
|
||||
end
|
||||
|
||||
test "it creates a Chat and ChatMessageReferences for the local users and bumps the unread count, except for the author" do
|
||||
test "it creates a Chat and MessageReferences for the local users and bumps the unread count, except for the author" do
|
||||
author = insert(:user, local: true)
|
||||
recipient = insert(:user, local: true)
|
||||
|
||||
|
@ -431,14 +431,14 @@ test "it creates a Chat and ChatMessageReferences for the local users and bumps
|
|||
|
||||
chat = Chat.get(author.id, recipient.ap_id)
|
||||
|
||||
[cm_ref] = ChatMessageReference.for_chat_query(chat) |> Repo.all()
|
||||
[cm_ref] = MessageReference.for_chat_query(chat) |> Repo.all()
|
||||
|
||||
assert cm_ref.object.data["content"] == "hey"
|
||||
assert cm_ref.unread == false
|
||||
|
||||
chat = Chat.get(recipient.id, author.ap_id)
|
||||
|
||||
[cm_ref] = ChatMessageReference.for_chat_query(chat) |> Repo.all()
|
||||
[cm_ref] = MessageReference.for_chat_query(chat) |> Repo.all()
|
||||
|
||||
assert cm_ref.object.data["content"] == "hey"
|
||||
assert cm_ref.unread == true
|
||||
|
|
|
@ -7,7 +7,7 @@ defmodule Pleroma.Web.MastodonAPI.NotificationViewTest do
|
|||
|
||||
alias Pleroma.Activity
|
||||
alias Pleroma.Chat
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.Notification
|
||||
alias Pleroma.Object
|
||||
alias Pleroma.Repo
|
||||
|
@ -17,7 +17,7 @@ defmodule Pleroma.Web.MastodonAPI.NotificationViewTest do
|
|||
alias Pleroma.Web.MastodonAPI.AccountView
|
||||
alias Pleroma.Web.MastodonAPI.NotificationView
|
||||
alias Pleroma.Web.MastodonAPI.StatusView
|
||||
alias Pleroma.Web.PleromaAPI.ChatMessageReferenceView
|
||||
alias Pleroma.Web.PleromaAPI.Chat.MessageReferenceView
|
||||
import Pleroma.Factory
|
||||
|
||||
defp test_notifications_rendering(notifications, user, expected_result) do
|
||||
|
@ -45,15 +45,14 @@ test "ChatMessage notification" do
|
|||
object = Object.normalize(activity)
|
||||
chat = Chat.get(recipient.id, user.ap_id)
|
||||
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
|
||||
expected = %{
|
||||
id: to_string(notification.id),
|
||||
pleroma: %{is_seen: false},
|
||||
type: "pleroma:chat_mention",
|
||||
account: AccountView.render("show.json", %{user: user, for: recipient}),
|
||||
chat_message:
|
||||
ChatMessageReferenceView.render("show.json", %{chat_message_reference: cm_ref}),
|
||||
chat_message: MessageReferenceView.render("show.json", %{chat_message_reference: cm_ref}),
|
||||
created_at: Utils.to_masto_date(notification.inserted_at)
|
||||
}
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do
|
|||
use Pleroma.Web.ConnCase, async: true
|
||||
|
||||
alias Pleroma.Chat
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.Object
|
||||
alias Pleroma.User
|
||||
alias Pleroma.Web.ActivityPub.ActivityPub
|
||||
|
@ -23,7 +23,7 @@ test "it marks one message as read", %{conn: conn, user: user} do
|
|||
{:ok, _create} = CommonAPI.post_chat_message(other_user, user, "sup part 2")
|
||||
{:ok, chat} = Chat.get_or_create(user.id, other_user.ap_id)
|
||||
object = Object.normalize(create, false)
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
|
||||
assert cm_ref.unread == true
|
||||
|
||||
|
@ -34,7 +34,7 @@ test "it marks one message as read", %{conn: conn, user: user} do
|
|||
|
||||
assert result["unread"] == false
|
||||
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
|
||||
assert cm_ref.unread == false
|
||||
end
|
||||
|
@ -50,7 +50,7 @@ test "it marks all messages in a chat as read", %{conn: conn, user: user} do
|
|||
{:ok, _create} = CommonAPI.post_chat_message(other_user, user, "sup part 2")
|
||||
{:ok, chat} = Chat.get_or_create(user.id, other_user.ap_id)
|
||||
object = Object.normalize(create, false)
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
|
||||
assert cm_ref.unread == true
|
||||
|
||||
|
@ -61,7 +61,7 @@ test "it marks all messages in a chat as read", %{conn: conn, user: user} do
|
|||
|
||||
assert result["unread"] == 0
|
||||
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
|
||||
assert cm_ref.unread == false
|
||||
end
|
||||
|
@ -139,7 +139,7 @@ test "it deletes a message from the chat", %{conn: conn, user: user} do
|
|||
|
||||
chat = Chat.get(user.id, recipient.ap_id)
|
||||
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
|
||||
# Deleting your own message removes the message and the reference
|
||||
result =
|
||||
|
@ -149,12 +149,12 @@ test "it deletes a message from the chat", %{conn: conn, user: user} do
|
|||
|> json_response_and_validate_schema(200)
|
||||
|
||||
assert result["id"] == cm_ref.id
|
||||
refute ChatMessageReference.get_by_id(cm_ref.id)
|
||||
refute MessageReference.get_by_id(cm_ref.id)
|
||||
assert %{data: %{"type" => "Tombstone"}} = Object.get_by_id(object.id)
|
||||
|
||||
# Deleting other people's messages just removes the reference
|
||||
object = Object.normalize(other_message, false)
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
|
||||
result =
|
||||
conn
|
||||
|
@ -163,7 +163,7 @@ test "it deletes a message from the chat", %{conn: conn, user: user} do
|
|||
|> json_response_and_validate_schema(200)
|
||||
|
||||
assert result["id"] == cm_ref.id
|
||||
refute ChatMessageReference.get_by_id(cm_ref.id)
|
||||
refute MessageReference.get_by_id(cm_ref.id)
|
||||
assert Object.get_by_id(object.id)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -2,15 +2,15 @@
|
|||
# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
|
||||
# SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
defmodule Pleroma.Web.PleromaAPI.ChatMessageReferenceViewTest do
|
||||
defmodule Pleroma.Web.PleromaAPI.Chat.MessageReferenceViewTest do
|
||||
use Pleroma.DataCase
|
||||
|
||||
alias Pleroma.Chat
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.Object
|
||||
alias Pleroma.Web.ActivityPub.ActivityPub
|
||||
alias Pleroma.Web.CommonAPI
|
||||
alias Pleroma.Web.PleromaAPI.ChatMessageReferenceView
|
||||
alias Pleroma.Web.PleromaAPI.Chat.MessageReferenceView
|
||||
|
||||
import Pleroma.Factory
|
||||
|
||||
|
@ -31,9 +31,9 @@ test "it displays a chat message" do
|
|||
|
||||
object = Object.normalize(activity)
|
||||
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
|
||||
chat_message = ChatMessageReferenceView.render("show.json", chat_message_reference: cm_ref)
|
||||
chat_message = MessageReferenceView.render("show.json", chat_message_reference: cm_ref)
|
||||
|
||||
assert chat_message[:id] == cm_ref.id
|
||||
assert chat_message[:content] == "kippis :firefox:"
|
||||
|
@ -47,10 +47,9 @@ test "it displays a chat message" do
|
|||
|
||||
object = Object.normalize(activity)
|
||||
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
|
||||
chat_message_two =
|
||||
ChatMessageReferenceView.render("show.json", chat_message_reference: cm_ref)
|
||||
chat_message_two = MessageReferenceView.render("show.json", chat_message_reference: cm_ref)
|
||||
|
||||
assert chat_message_two[:id] == cm_ref.id
|
||||
assert chat_message_two[:content] == "gkgkgk"
|
|
@ -6,12 +6,12 @@ defmodule Pleroma.Web.PleromaAPI.ChatViewTest do
|
|||
use Pleroma.DataCase
|
||||
|
||||
alias Pleroma.Chat
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.Object
|
||||
alias Pleroma.Web.CommonAPI
|
||||
alias Pleroma.Web.CommonAPI.Utils
|
||||
alias Pleroma.Web.MastodonAPI.AccountView
|
||||
alias Pleroma.Web.PleromaAPI.ChatMessageReferenceView
|
||||
alias Pleroma.Web.PleromaAPI.Chat.MessageReferenceView
|
||||
alias Pleroma.Web.PleromaAPI.ChatView
|
||||
|
||||
import Pleroma.Factory
|
||||
|
@ -55,9 +55,9 @@ test "it represents a chat" do
|
|||
|
||||
represented_chat = ChatView.render("show.json", chat: chat)
|
||||
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, chat_message)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, chat_message)
|
||||
|
||||
assert represented_chat[:last_message] ==
|
||||
ChatMessageReferenceView.render("show.json", chat_message_reference: cm_ref)
|
||||
MessageReferenceView.render("show.json", chat_message_reference: cm_ref)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -8,7 +8,7 @@ defmodule Pleroma.Web.StreamerTest do
|
|||
import Pleroma.Factory
|
||||
|
||||
alias Pleroma.Chat
|
||||
alias Pleroma.ChatMessageReference
|
||||
alias Pleroma.Chat.MessageReference
|
||||
alias Pleroma.Conversation.Participation
|
||||
alias Pleroma.List
|
||||
alias Pleroma.Object
|
||||
|
@ -155,7 +155,7 @@ test "it sends chat messages to the 'user:pleroma_chat' stream", %{user: user} d
|
|||
{:ok, create_activity} = CommonAPI.post_chat_message(other_user, user, "hey cirno")
|
||||
object = Object.normalize(create_activity, false)
|
||||
chat = Chat.get(user.id, other_user.ap_id)
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = %{cm_ref | chat: chat, object: object}
|
||||
|
||||
Streamer.get_topic_and_add_socket("user:pleroma_chat", user)
|
||||
|
@ -173,7 +173,7 @@ test "it sends chat messages to the 'user' stream", %{user: user} do
|
|||
{:ok, create_activity} = CommonAPI.post_chat_message(other_user, user, "hey cirno")
|
||||
object = Object.normalize(create_activity, false)
|
||||
chat = Chat.get(user.id, other_user.ap_id)
|
||||
cm_ref = ChatMessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = MessageReference.for_chat_and_object(chat, object)
|
||||
cm_ref = %{cm_ref | chat: chat, object: object}
|
||||
|
||||
Streamer.get_topic_and_add_socket("user", user)
|
||||
|
|
Loading…
Reference in New Issue