X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=test%2Fpleroma%2Fweb%2Fmedia_proxy%2Finvalidation%2Fscript_test.exs;h=a57385249ffaf538c2fa164c888170a5092d9fed;hb=bdc676e43318bdeadf83c7c3a8909cff28910a41;hp=692cbb2df59e78466e7cf6d3928fc78038eb5a0e;hpb=7bbc328d66aaac8d680f52521c6823aea42821af;p=akkoma
diff --git a/test/pleroma/web/media_proxy/invalidation/script_test.exs b/test/pleroma/web/media_proxy/invalidation/script_test.exs
index 692cbb2df..a57385249 100644
--- a/test/pleroma/web/media_proxy/invalidation/script_test.exs
+++ b/test/pleroma/web/media_proxy/invalidation/script_test.exs
@@ -1,24 +1,21 @@
# Pleroma: A lightweight social networking server
-# Copyright © 2017-2020 Pleroma Authors
+# Copyright © 2017-2021 Pleroma Authors
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.MediaProxy.Invalidation.ScriptTest do
- use ExUnit.Case
+ use ExUnit.Case, async: true
alias Pleroma.Web.MediaProxy.Invalidation
import ExUnit.CaptureLog
- setup do
- on_exit(fn -> Cachex.clear(:banned_urls_cache) end)
- end
-
- test "it logger error when script not found" do
+ test "it logs error when script is not found" do
assert capture_log(fn ->
- assert Invalidation.Script.purge(
- ["http://example.com/media/example.jpg"],
- script_path: "./example"
- ) == {:error, "%ErlangError{original: :enoent}"}
- end) =~ "Error while cache purge: %ErlangError{original: :enoent}"
+ assert {:error, _} =
+ Invalidation.Script.purge(
+ ["http://example.com/media/example.jpg"],
+ script_path: "./example"
+ )
+ end) =~ "Error while cache purge: %ErlangError{original: :enoent"
capture_log(fn ->
assert Invalidation.Script.purge(
@@ -27,4 +24,30 @@ defmodule Pleroma.Web.MediaProxy.Invalidation.ScriptTest do
) == {:error, "\"not found script path\""}
end)
end
+
+ describe "url formatting" do
+ setup do
+ urls = [
+ "https://bikeshed.party/media/foo.png",
+ "http://safe.millennial.space/proxy/wheeeee.gif",
+ "https://lain.com/proxy/mediafile.mp4?foo&bar=true",
+ "http://localhost:4000/media/upload.jpeg"
+ ]
+
+ [urls: urls]
+ end
+
+ test "with invalid formatter", %{urls: urls} do
+ assert urls == Invalidation.Script.maybe_format_urls(urls, nil)
+ end
+
+ test "with :htcacheclean formatter", %{urls: urls} do
+ assert [
+ "https://bikeshed.party:443/media/foo.png?",
+ "http://safe.millennial.space:80/proxy/wheeeee.gif?",
+ "https://lain.com:443/proxy/mediafile.mp4?foo&bar=true",
+ "http://localhost:4000/media/upload.jpeg?"
+ ] == Invalidation.Script.maybe_format_urls(urls, :htcacheclean)
+ end
+ end
end