diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/pleroma/web/plugs/frontend_static_plug_test.exs | 21 | 
1 files changed, 21 insertions, 0 deletions
diff --git a/test/pleroma/web/plugs/frontend_static_plug_test.exs b/test/pleroma/web/plugs/frontend_static_plug_test.exs index f6f7d7bdb..8b7b022fc 100644 --- a/test/pleroma/web/plugs/frontend_static_plug_test.exs +++ b/test/pleroma/web/plugs/frontend_static_plug_test.exs @@ -4,6 +4,7 @@  defmodule Pleroma.Web.Plugs.FrontendStaticPlugTest do    use Pleroma.Web.ConnCase +  import Mock    @dir "test/tmp/instance_static" @@ -53,4 +54,24 @@ defmodule Pleroma.Web.Plugs.FrontendStaticPlugTest do      index = get(conn, "/pleroma/admin/")      assert html_response(index, 200) == "from frontend plug"    end + +  test "exclude invalid path", %{conn: conn} do +    name = "pleroma-fe" +    ref = "dist" +    clear_config([:media_proxy, :enabled], true) +    clear_config([Pleroma.Web.Endpoint, :secret_key_base], "00000000000") +    clear_config([:frontends, :primary], %{"name" => name, "ref" => ref}) +    path = "#{@dir}/frontends/#{name}/#{ref}" + +    File.mkdir_p!("#{path}/proxy/rr/ss") +    File.write!("#{path}/proxy/rr/ss/Ek7w8WPVcAApOvN.jpg:large", "FB image") + +    url = +      Pleroma.Web.MediaProxy.encode_url("https://pbs.twimg.com/media/Ek7w8WPVcAApOvN.jpg:large") + +    with_mock Pleroma.ReverseProxy, +      call: fn _conn, _url, _opts -> %Plug.Conn{status: :success} end do +      assert %Plug.Conn{status: :success} = get(conn, url) +    end +  end  end  | 
