Added endpoint for user account deletion

This commit is contained in:
Syldexia 2018-05-11 12:32:59 +01:00
commit a16117225f
5 changed files with 88 additions and 0 deletions

View file

@ -800,4 +800,40 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do
user = Repo.get!(User, user.id)
assert user.bio == "Hello,<br>World! I<br> am a test."
end
describe "POST /api/account/delete_account" do
setup [:valid_user]
test "without credentials", %{conn: conn} do
conn = post(conn, "/api/account/delete_account")
assert json_response(conn, 403) == %{"error" => "Invalid credentials."}
end
test "with credentials and invalid password", %{conn: conn, user: current_user} do
conn =
conn
|> with_credentials(current_user.nickname, "test")
|> post("/api/account/delete_account", %{
"password" => ""
})
assert json_response(conn, 403) == %{
"error" => "Invalid password.",
"request" => "/api/account/delete_account"
}
end
test "with credentials and valid password", %{conn: conn, user: current_user} do
conn =
conn
|> with_credentials(current_user.nickname, "test")
|> post("/api/account/delete_account", %{
"password" => "test"
})
assert json_response(conn, 200) == %{"status" => "success"}
fetched_user = Repo.get(User, current_user.id)
assert fetched_user.info == %{"deactivated" => true}
end
end
end