mirror of
https://git.pleroma.social/pleroma/pleroma.git
synced 2024-12-25 01:20:31 +00:00
31 lines
933 B
Elixir
31 lines
933 B
Elixir
defmodule Pleroma.Web.OStatus.UserRepresenterTest do
|
|
use Pleroma.DataCase
|
|
alias Pleroma.Web.OStatus.UserRepresenter
|
|
|
|
import Pleroma.Factory
|
|
alias Pleroma.User
|
|
|
|
test "returns a user with id, uri, name and link" do
|
|
user = build(:user, nickname: "レイン")
|
|
tuple = UserRepresenter.to_simple_form(user)
|
|
|
|
res = :xmerl.export_simple_content(tuple, :xmerl_xml) |> to_string
|
|
|
|
expected = """
|
|
<id>#{user.ap_id}</id>
|
|
<activity:object>http://activitystrea.ms/schema/1.0/person</activity:object>
|
|
<uri>#{user.ap_id}</uri>
|
|
<poco:preferredUsername>#{user.nickname}</poco:preferredUsername>
|
|
<poco:displayName>#{user.name}</poco:displayName>
|
|
<poco:note>#{user.bio}</poco:note>
|
|
<name>#{user.nickname}</name>
|
|
<link rel="avatar" href="#{User.avatar_url(user)}" />
|
|
"""
|
|
|
|
assert clean(res) == clean(expected)
|
|
end
|
|
|
|
defp clean(string) do
|
|
String.replace(string, ~r/\s/, "")
|
|
end
|
|
end
|