diff options
Diffstat (limited to 'test/web/pleroma_api/controllers')
3 files changed, 29 insertions, 99 deletions
diff --git a/test/web/pleroma_api/controllers/account_controller_test.exs b/test/web/pleroma_api/controllers/account_controller_test.exs index 103997c31..07909d48b 100644 --- a/test/web/pleroma_api/controllers/account_controller_test.exs +++ b/test/web/pleroma_api/controllers/account_controller_test.exs @@ -13,8 +13,6 @@ defmodule Pleroma.Web.PleromaAPI.AccountControllerTest do    import Pleroma.Factory    import Swoosh.TestAssertions -  @image "data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7" -    describe "POST /api/v1/pleroma/accounts/confirmation_resend" do      setup do        {:ok, user} = @@ -68,103 +66,6 @@ defmodule Pleroma.Web.PleromaAPI.AccountControllerTest do      end    end -  describe "PATCH /api/v1/pleroma/accounts/update_avatar" do -    setup do: oauth_access(["write:accounts"]) - -    test "user avatar can be set", %{user: user, conn: conn} do -      avatar_image = File.read!("test/fixtures/avatar_data_uri") - -      conn = -        conn -        |> put_req_header("content-type", "multipart/form-data") -        |> patch("/api/v1/pleroma/accounts/update_avatar", %{img: avatar_image}) - -      user = refresh_record(user) - -      assert %{ -               "name" => _, -               "type" => _, -               "url" => [ -                 %{ -                   "href" => _, -                   "mediaType" => _, -                   "type" => _ -                 } -               ] -             } = user.avatar - -      assert %{"url" => _} = json_response_and_validate_schema(conn, 200) -    end - -    test "user avatar can be reset", %{user: user, conn: conn} do -      conn = -        conn -        |> put_req_header("content-type", "multipart/form-data") -        |> patch("/api/v1/pleroma/accounts/update_avatar", %{img: ""}) - -      user = User.get_cached_by_id(user.id) - -      assert user.avatar == nil - -      assert %{"url" => nil} = json_response_and_validate_schema(conn, 200) -    end -  end - -  describe "PATCH /api/v1/pleroma/accounts/update_banner" do -    setup do: oauth_access(["write:accounts"]) - -    test "can set profile banner", %{user: user, conn: conn} do -      conn = -        conn -        |> put_req_header("content-type", "multipart/form-data") -        |> patch("/api/v1/pleroma/accounts/update_banner", %{"banner" => @image}) - -      user = refresh_record(user) -      assert user.banner["type"] == "Image" - -      assert %{"url" => _} = json_response_and_validate_schema(conn, 200) -    end - -    test "can reset profile banner", %{user: user, conn: conn} do -      conn = -        conn -        |> put_req_header("content-type", "multipart/form-data") -        |> patch("/api/v1/pleroma/accounts/update_banner", %{"banner" => ""}) - -      user = refresh_record(user) -      assert user.banner == %{} - -      assert %{"url" => nil} = json_response_and_validate_schema(conn, 200) -    end -  end - -  describe "PATCH /api/v1/pleroma/accounts/update_background" do -    setup do: oauth_access(["write:accounts"]) - -    test "background image can be set", %{user: user, conn: conn} do -      conn = -        conn -        |> put_req_header("content-type", "multipart/form-data") -        |> patch("/api/v1/pleroma/accounts/update_background", %{"img" => @image}) - -      user = refresh_record(user) -      assert user.background["type"] == "Image" -      # assert %{"url" => _} = json_response(conn, 200) -      assert %{"url" => _} = json_response_and_validate_schema(conn, 200) -    end - -    test "background image can be reset", %{user: user, conn: conn} do -      conn = -        conn -        |> put_req_header("content-type", "multipart/form-data") -        |> patch("/api/v1/pleroma/accounts/update_background", %{"img" => ""}) - -      user = refresh_record(user) -      assert user.background == %{} -      assert %{"url" => nil} = json_response_and_validate_schema(conn, 200) -    end -  end -    describe "getting favorites timeline of specified user" do      setup do        [current_user, user] = insert_pair(:user, hide_favorites: false) diff --git a/test/web/pleroma_api/controllers/chat_controller_test.exs b/test/web/pleroma_api/controllers/chat_controller_test.exs index 82e16741d..d71e80d03 100644 --- a/test/web/pleroma_api/controllers/chat_controller_test.exs +++ b/test/web/pleroma_api/controllers/chat_controller_test.exs @@ -332,5 +332,27 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do                 chat_1.id |> to_string()               ]      end + +    test "it is not affected by :restrict_unauthenticated setting (issue #1973)", %{ +      conn: conn, +      user: user +    } do +      clear_config([:restrict_unauthenticated, :profiles, :local], true) +      clear_config([:restrict_unauthenticated, :profiles, :remote], true) + +      user2 = insert(:user) +      user3 = insert(:user, local: false) + +      {:ok, _chat_12} = Chat.get_or_create(user.id, user2.ap_id) +      {:ok, _chat_13} = Chat.get_or_create(user.id, user3.ap_id) + +      result = +        conn +        |> get("/api/v1/pleroma/chats") +        |> json_response_and_validate_schema(200) + +      account_ids = Enum.map(result, &get_in(&1, ["account", "id"])) +      assert Enum.sort(account_ids) == Enum.sort([user2.id, user3.id]) +    end    end  end diff --git a/test/web/pleroma_api/controllers/emoji_pack_controller_test.exs b/test/web/pleroma_api/controllers/emoji_pack_controller_test.exs index df58a5eb6..e113bb15f 100644 --- a/test/web/pleroma_api/controllers/emoji_pack_controller_test.exs +++ b/test/web/pleroma_api/controllers/emoji_pack_controller_test.exs @@ -14,6 +14,8 @@ defmodule Pleroma.Web.PleromaAPI.EmojiPackControllerTest do                )    setup do: clear_config([:auth, :enforce_oauth_admin_scope_usage], false) +  setup do: clear_config([:instance, :public], true) +    setup do      admin = insert(:user, is_admin: true)      token = insert(:oauth_admin_token, user: admin) @@ -27,6 +29,11 @@ defmodule Pleroma.Web.PleromaAPI.EmojiPackControllerTest do      {:ok, %{admin_conn: admin_conn}}    end +  test "GET /api/pleroma/emoji/packs when :public: false", %{conn: conn} do +    Config.put([:instance, :public], false) +    conn |> get("/api/pleroma/emoji/packs") |> json_response_and_validate_schema(200) +  end +    test "GET /api/pleroma/emoji/packs", %{conn: conn} do      resp = conn |> get("/api/pleroma/emoji/packs") |> json_response_and_validate_schema(200)  | 
