summaryrefslogtreecommitdiff
path: root/test/media_proxy_test.exs
diff options
context:
space:
mode:
Diffstat (limited to 'test/media_proxy_test.exs')
-rw-r--r--test/media_proxy_test.exs19
1 files changed, 11 insertions, 8 deletions
diff --git a/test/media_proxy_test.exs b/test/media_proxy_test.exs
index b23aeb88b..69e9bc9f4 100644
--- a/test/media_proxy_test.exs
+++ b/test/media_proxy_test.exs
@@ -96,10 +96,10 @@ defmodule Pleroma.MediaProxyTest do
assert decode_url(sig, base64) == {:error, :invalid_signature}
end
- test "filename_matches matches url encoded paths" do
+ test "filename_matches preserves the encoded or decoded path" do
assert MediaProxyController.filename_matches(
true,
- "/Hello%20world.jpg",
+ "/Hello world.jpg",
"http://pleroma.social/Hello world.jpg"
) == :ok
@@ -108,19 +108,22 @@ defmodule Pleroma.MediaProxyTest do
"/Hello%20world.jpg",
"http://pleroma.social/Hello%20world.jpg"
) == :ok
- end
- test "filename_matches matches non-url encoded paths" do
assert MediaProxyController.filename_matches(
true,
- "/Hello world.jpg",
- "http://pleroma.social/Hello%20world.jpg"
+ "/my%2Flong%2Furl%2F2019%2F07%2FS.jpg",
+ "http://pleroma.social/my%2Flong%2Furl%2F2019%2F07%2FS.jpg"
) == :ok
+ end
+
+ test "encoded url are tried to match for proxy as `conn.request_path` encodes the url" do
+ # conn.request_path will return encoded url
+ request_path = "/ANALYSE-DAI-_-LE-STABLECOIN-100-D%C3%89CENTRALIS%C3%89-BQ.jpg"
assert MediaProxyController.filename_matches(
true,
- "/Hello world.jpg",
- "http://pleroma.social/Hello world.jpg"
+ request_path,
+ "https://mydomain.com/uploads/2019/07/ANALYSE-DAI-_-LE-STABLECOIN-100-DÉCENTRALISÉ-BQ.jpg"
) == :ok
end