CommonAPI: add emoji to user source data on update

This commit is contained in:
eal 2018-08-12 22:24:10 +03:00
commit f9d13558c8
4 changed files with 56 additions and 1 deletions

View file

@ -1,6 +1,7 @@
defmodule Pleroma.Web.CommonAPI.Test do
use Pleroma.DataCase
alias Pleroma.Web.CommonAPI
alias Pleroma.User
import Pleroma.Factory
@ -10,4 +11,14 @@ defmodule Pleroma.Web.CommonAPI.Test do
assert activity.data["object"]["tag"] == ["2hu"]
end
test "it adds emoji when updating profiles" do
user = insert(:user, %{name: ":karjalanpiirakka:"})
CommonAPI.update(user)
user = User.get_cached_by_ap_id(user.ap_id)
[karjalanpiirakka] = user.info["source_data"]["tag"]
assert karjalanpiirakka["name"] == ":karjalanpiirakka:"
end
end

View file

@ -1,5 +1,6 @@
defmodule Pleroma.Web.CommonAPI.UtilsTest do
alias Pleroma.Web.CommonAPI.Utils
alias Pleroma.Web.Endpoint
alias Pleroma.Builders.{UserBuilder}
use Pleroma.DataCase
@ -29,4 +30,23 @@ defmodule Pleroma.Web.CommonAPI.UtilsTest do
assert Utils.confirm_current_password(user, "test") == {:ok, user}
end
end
test "parses emoji from name and bio" do
{:ok, user} = UserBuilder.insert(%{name: ":karjalanpiirakka:", bio: ":perkele:"})
expected = [
%{
"type" => "Emoji",
"icon" => %{"url" => "#{Endpoint.url()}/finmoji/128px/perkele-128.png"},
"name" => ":perkele:"
},
%{
"type" => "Emoji",
"icon" => %{"url" => "#{Endpoint.url()}/finmoji/128px/karjalanpiirakka-128.png"},
"name" => ":karjalanpiirakka:"
}
]
assert expected == Utils.emoji_from_profile(user)
end
end