Browse Source

common api: make sure the generated IR is actually federatable

object-id-column
Ariadne Conill 4 years ago
parent
commit
71eff09e56
2 changed files with 10 additions and 2 deletions
  1. +4
    -2
      lib/pleroma/web/common_api/common_api.ex
  2. +6
    -0
      test/web/activity_pub/transmogrifier_test.exs

+ 4
- 2
lib/pleroma/web/common_api/common_api.ex View File

@@ -217,14 +217,16 @@ defmodule Pleroma.Web.CommonAPI do
{to, cc} <- get_to_and_cc(user, [], nil, visibility, nil),
listen_data <-
Map.take(data, ["album", "artist", "title", "length"])
|> Map.put("type", "Audio"),
|> Map.put("type", "Audio")
|> Map.put("to", to)
|> Map.put("cc", cc),
{:ok, activity} <-
ActivityPub.listen(%{
actor: user,
to: to,
object: listen_data,
context: Utils.generate_context_id(),
additional: %{cc: cc}
additional: %{"cc" => cc}
}) do
{:ok, activity}
end


+ 6
- 0
test/web/activity_pub/transmogrifier_test.exs View File

@@ -1226,6 +1226,12 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do
{:ok, modified} = Transmogrifier.prepare_outgoing(listen_activity.data)

assert modified["type"] == "Listen"

user = insert(:user)

{:ok, activity} = CommonAPI.listen(user, %{"title" => "lain radio episode 1"})

{:ok, modified} = Transmogrifier.prepare_outgoing(activity.data)
end
end



Loading…
Cancel
Save