Use absolute URLs to thumbnail and background in /api/v1/instance
authorMark Felder <feld@FreeBSD.org>
Mon, 16 Nov 2020 21:29:15 +0000 (21:29 +0000)
committerMark Felder <feld@FreeBSD.org>
Mon, 16 Nov 2020 21:29:15 +0000 (21:29 +0000)
lib/pleroma/web/mastodon_api/views/instance_view.ex
test/pleroma/web/mastodon_api/controllers/instance_controller_test.exs

index ea2d3aa9c9603cb26ee30b4bb7c9bb6c42fd8a3c..c5aca5506c85adab9d942d858a0fa41e6c5b7bc3 100644 (file)
@@ -23,7 +23,7 @@ defmodule Pleroma.Web.MastodonAPI.InstanceView do
         streaming_api: Pleroma.Web.Endpoint.websocket_url()
       },
       stats: Pleroma.Stats.get_stats(),
-      thumbnail: Keyword.get(instance, :instance_thumbnail),
+      thumbnail: Pleroma.Web.base_url() <> Keyword.get(instance, :instance_thumbnail),
       languages: ["en"],
       registrations: Keyword.get(instance, :registrations_open),
       approval_required: Keyword.get(instance, :account_approval_required),
@@ -34,7 +34,7 @@ defmodule Pleroma.Web.MastodonAPI.InstanceView do
       avatar_upload_limit: Keyword.get(instance, :avatar_upload_limit),
       background_upload_limit: Keyword.get(instance, :background_upload_limit),
       banner_upload_limit: Keyword.get(instance, :banner_upload_limit),
-      background_image: Keyword.get(instance, :background_image),
+      background_image: Pleroma.Web.base_url() <> Keyword.get(instance, :background_image),
       chat_limit: Keyword.get(instance, :chat_limit),
       description_limit: Keyword.get(instance, :description_limit),
       pleroma: %{
index 6a9ccd97983c6f9dc50b2026b0a90045d0cb5007..605df6ed66b2fb841dd610067857fc7b8e603cfe 100644 (file)
@@ -13,6 +13,9 @@ defmodule Pleroma.Web.MastodonAPI.InstanceControllerTest do
     assert result = json_response_and_validate_schema(conn, 200)
 
     email = Pleroma.Config.get([:instance, :email])
+    thumbnail = Pleroma.Web.base_url() <> Pleroma.Config.get([:instance, :instance_thumbnail])
+    background = Pleroma.Web.base_url() <> Pleroma.Config.get([:instance, :background_image])
+
     # Note: not checking for "max_toot_chars" since it's optional
     assert %{
              "uri" => _,
@@ -24,7 +27,7 @@ defmodule Pleroma.Web.MastodonAPI.InstanceControllerTest do
                "streaming_api" => _
              },
              "stats" => _,
-             "thumbnail" => _,
+             "thumbnail" => from_config_thumbnail,
              "languages" => _,
              "registrations" => _,
              "approval_required" => _,
@@ -33,7 +36,7 @@ defmodule Pleroma.Web.MastodonAPI.InstanceControllerTest do
              "avatar_upload_limit" => _,
              "background_upload_limit" => _,
              "banner_upload_limit" => _,
-             "background_image" => _,
+             "background_image" => from_config_background,
              "chat_limit" => _,
              "description_limit" => _
            } = result
@@ -45,6 +48,8 @@ defmodule Pleroma.Web.MastodonAPI.InstanceControllerTest do
     assert result["pleroma"]["vapid_public_key"]
 
     assert email == from_config_email
+    assert thumbnail == from_config_thumbnail
+    assert background == from_config_background
   end
 
   test "get instance stats", %{conn: conn} do