Parse bio for MastodonAPI

This commit is contained in:
Maxim Filippov 2018-12-03 18:59:50 +03:00
parent 8148943368
commit 4b70e5eae9
2 changed files with 10 additions and 3 deletions

View File

@ -55,7 +55,7 @@ def update_credentials(%{assigns: %{user: user}} = conn, params) do
user_params = user_params =
%{} %{}
|> add_if_present(params, "display_name", :name) |> add_if_present(params, "display_name", :name)
|> add_if_present(params, "note", :bio) |> add_if_present(params, "note", :bio, fn value -> {:ok, User.parse_bio(value)} end)
|> add_if_present(params, "avatar", :avatar, fn value -> |> add_if_present(params, "avatar", :avatar, fn value ->
with %Plug.Upload{} <- value, with %Plug.Upload{} <- value,
{:ok, object} <- ActivityPub.upload(value, type: :avatar) do {:ok, object} <- ActivityPub.upload(value, type: :avatar) do

View File

@ -1253,14 +1253,21 @@ test "returns the favorites of a user", %{conn: conn} do
describe "updating credentials" do describe "updating credentials" do
test "updates the user's bio", %{conn: conn} do test "updates the user's bio", %{conn: conn} do
user = insert(:user) user = insert(:user)
user2 = insert(:user)
conn = conn =
conn conn
|> assign(:user, user) |> assign(:user, user)
|> patch("/api/v1/accounts/update_credentials", %{"note" => "I drink #cofe"}) |> patch("/api/v1/accounts/update_credentials", %{
"note" => "I drink #cofe with @#{user2.nickname}"
})
assert user = json_response(conn, 200) assert user = json_response(conn, 200)
assert user["note"] == "I drink #cofe"
assert user["note"] ==
"I drink <a href=\"http://localhost:4001/tag/cofe\">#cofe</a> with <span><a href=\"#{
user2.ap_id
}\">@<span>#{user2.nickname}</span></a></span>"
end end
test "updates the user's locking status", %{conn: conn} do test "updates the user's locking status", %{conn: conn} do