Builder.note/1: return {:ok, map(), keyword()} like other Builder functions

This commit is contained in:
Alex Gleason 2021-08-14 11:24:55 -05:00
parent a2eacfc525
commit ba6049aa81
No known key found for this signature in database
GPG key ID: 7211D1F99744FBB7
3 changed files with 36 additions and 28 deletions

View file

@ -126,7 +126,9 @@ defmodule Pleroma.Web.ActivityPub.Builder do
|> Pleroma.Maps.put_if_present("context", context), []}
end
@spec note(ActivityDraft.t()) :: {:ok, map(), keyword()}
def note(%ActivityDraft{} = draft) do
data =
%{
"type" => "Note",
"to" => draft.to,
@ -141,6 +143,8 @@ defmodule Pleroma.Web.ActivityPub.Builder do
}
|> add_in_reply_to(draft.in_reply_to)
|> Map.merge(draft.extra)
{:ok, data, []}
end
defp add_in_reply_to(object, nil), do: object

View file

@ -214,8 +214,10 @@ defmodule Pleroma.Web.CommonAPI.ActivityDraft do
emoji = Map.merge(emoji, summary_emoji)
{:ok, note_data, _meta} = Builder.note(draft)
object =
Builder.note(draft)
note_data
|> Map.put("emoji", emoji)
|> Map.put("source", draft.status)
|> Map.put("generator", draft.params[:generator])

View file

@ -28,7 +28,7 @@ defmodule Pleroma.Web.ActivityPub.BuilderTest do
extra: %{"custom_tag" => "test"}
}
assert Builder.note(draft) == %{
expected = %{
"actor" => user.ap_id,
"attachment" => [],
"cc" => [user3.ap_id],
@ -41,6 +41,8 @@ defmodule Pleroma.Web.ActivityPub.BuilderTest do
"type" => "Note",
"custom_tag" => "test"
}
assert {:ok, ^expected, []} = Builder.note(draft)
end
end
end