diff options
| -rw-r--r-- | lib/pleroma/web/twitter_api/controllers/util_controller.ex | 3 | ||||
| -rw-r--r-- | test/web/twitter_api/util_controller_test.exs | 25 | 
2 files changed, 26 insertions, 2 deletions
| diff --git a/lib/pleroma/web/twitter_api/controllers/util_controller.ex b/lib/pleroma/web/twitter_api/controllers/util_controller.ex index 824951d59..d5d5ce08f 100644 --- a/lib/pleroma/web/twitter_api/controllers/util_controller.ex +++ b/lib/pleroma/web/twitter_api/controllers/util_controller.ex @@ -216,7 +216,8 @@ defmodule Pleroma.Web.TwitterAPI.UtilController do    end    def blocks_import(%{assigns: %{user: blocker}} = conn, %{"list" => list}) do -    User.blocks_import(blocker, _blocked_identifiers = String.split(list)) +    blocked_identifiers = list |> String.split() |> Enum.map(&String.trim_leading(&1, "@")) +    User.blocks_import(blocker, blocked_identifiers)      json(conn, "job started")    end diff --git a/test/web/twitter_api/util_controller_test.exs b/test/web/twitter_api/util_controller_test.exs index 85aaab19b..d835331ae 100644 --- a/test/web/twitter_api/util_controller_test.exs +++ b/test/web/twitter_api/util_controller_test.exs @@ -96,7 +96,7 @@ defmodule Pleroma.Web.TwitterAPI.UtilControllerTest do        end      end -    test "it imports with different nickname variations", %{conn: conn} do +    test "it imports follows with different nickname variations", %{conn: conn} do        [user2, user3, user4, user5, user6] = insert_list(5, :user)        identifiers = @@ -160,6 +160,29 @@ defmodule Pleroma.Web.TwitterAPI.UtilControllerTest do                 )        end      end + +    test "it imports blocks with different nickname variations", %{conn: conn} do +      [user2, user3, user4, user5, user6] = insert_list(5, :user) + +      identifiers = +        [ +          user2.ap_id, +          user3.nickname, +          "@" <> user4.nickname, +          user5.nickname <> "@localhost", +          "@" <> user6.nickname <> "@localhost" +        ] +        |> Enum.join(" ") + +      response = +        conn +        |> post("/api/pleroma/blocks_import", %{"list" => identifiers}) +        |> json_response(:ok) + +      assert response == "job started" +      assert [job_result] = ObanHelpers.perform_all() +      assert job_result == [user2, user3, user4, user5, user6] +    end    end    describe "PUT /api/pleroma/notification_settings" do | 
