Add thr:in-reply-to to ostatus representer.

This commit is contained in:
Roger Braun 2017-04-30 11:17:34 +02:00
commit d937a8e695
3 changed files with 55 additions and 1 deletions

View file

@ -34,6 +34,42 @@ defmodule Pleroma.Web.OStatus.ActivityRepresenterTest do
assert clean(res) == clean(expected)
end
test "a reply note" do
note = insert(:note_activity)
answer = insert(:note_activity)
object = answer.data["object"]
object = Map.put(object, "inReplyTo", note.data["object"]["id"])
data = %{answer.data | "object" => object}
answer = %{answer | data: data}
updated_at = answer.updated_at
|> NaiveDateTime.to_iso8601
inserted_at = answer.inserted_at
|> NaiveDateTime.to_iso8601
user = User.get_cached_by_ap_id(answer.data["actor"])
expected = """
<activity:object-type>http://activitystrea.ms/schema/1.0/note</activity:object-type>
<activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb>
<id>#{answer.data["id"]}</id>
<title>New note by #{user.nickname}</title>
<content type="html">#{answer.data["object"]["content"]}</content>
<published>#{inserted_at}</published>
<updated>#{updated_at}</updated>
<ostatus:conversation>#{answer.data["context"]}</ostatus:conversation>
<link href="#{answer.data["context"]}" rel="ostatus:conversation" />
<thr:in-reply-to ref="#{note.data["id"]}" />
"""
tuple = ActivityRepresenter.to_simple_form(answer, user)
res = :xmerl.export_simple_content(tuple, :xmerl_xml) |> IO.iodata_to_binary
assert clean(res) == clean(expected)
end
test "an unknown activity" do
tuple = ActivityRepresenter.to_simple_form(%Activity{}, nil)
assert is_nil(tuple)