diff options
author | feld <feld@feld.me> | 2020-10-28 15:06:47 +0000 |
---|---|---|
committer | rinpatch <rinpatch@sdf.org> | 2020-11-05 16:18:56 +0300 |
commit | 88dc1d24b98a9cac9f740fcd12b38a2d7727a9c2 (patch) | |
tree | cdee069509899deb275684ce5ccf4fb02fcc0e15 /test | |
parent | 7058cac1c2eeb46ef6e95b6af863c931f8d38f06 (diff) | |
download | pleroma-88dc1d24b98a9cac9f740fcd12b38a2d7727a9c2.tar.gz |
Merge branch 'issue/2261' into 'develop'
[#2261] FrontStatic plug: excluded invalid url
See merge request pleroma/pleroma!3106
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 |