ChatMessageView: Support emoji.

This commit is contained in:
lain 2020-04-20 14:38:53 +02:00
parent 7e53da250e
commit b5df4a98e4
2 changed files with 9 additions and 3 deletions

View file

@ -6,6 +6,8 @@ defmodule Pleroma.Web.PleromaAPI.ChatMessageView do
use Pleroma.Web, :view use Pleroma.Web, :view
alias Pleroma.Chat alias Pleroma.Chat
alias Pleroma.Web.CommonAPI.Utils
alias Pleroma.Web.MastodonAPI.StatusView
def render( def render(
"show.json", "show.json",
@ -18,7 +20,9 @@ def render(
id: id |> to_string(), id: id |> to_string(),
content: chat_message["content"], content: chat_message["content"],
chat_id: chat_id |> to_string(), chat_id: chat_id |> to_string(),
actor: chat_message["actor"] actor: chat_message["actor"],
created_at: Utils.to_masto_date(chat_message["published"]),
emojis: StatusView.build_emojis(chat_message["emoji"])
} }
end end

View file

@ -15,7 +15,7 @@ defmodule Pleroma.Web.PleromaAPI.ChatMessageViewTest do
test "it displays a chat message" do test "it displays a chat message" do
user = insert(:user) user = insert(:user)
recipient = insert(:user) recipient = insert(:user)
{:ok, activity} = CommonAPI.post_chat_message(user, recipient, "kippis") {:ok, activity} = CommonAPI.post_chat_message(user, recipient, "kippis :firefox:")
chat = Chat.get(user.id, recipient.ap_id) chat = Chat.get(user.id, recipient.ap_id)
@ -24,9 +24,11 @@ test "it displays a chat message" do
chat_message = ChatMessageView.render("show.json", object: object, for: user, chat: chat) chat_message = ChatMessageView.render("show.json", object: object, for: user, chat: chat)
assert chat_message[:id] == object.id |> to_string() assert chat_message[:id] == object.id |> to_string()
assert chat_message[:content] == "kippis" assert chat_message[:content] == "kippis :firefox:"
assert chat_message[:actor] == user.ap_id assert chat_message[:actor] == user.ap_id
assert chat_message[:chat_id] assert chat_message[:chat_id]
assert chat_message[:created_at]
assert match?([%{shortcode: "firefox"}], chat_message[:emojis])
{:ok, activity} = CommonAPI.post_chat_message(recipient, user, "gkgkgk") {:ok, activity} = CommonAPI.post_chat_message(recipient, user, "gkgkgk")