diff options
author | lain <lain@soykaf.club> | 2020-05-20 10:35:36 +0000 |
---|---|---|
committer | lain <lain@soykaf.club> | 2020-05-20 10:35:36 +0000 |
commit | 6dd1575c64ccc2ffe82155f70935b2aa58d22684 (patch) | |
tree | 35c506f7f402592ab0489996106350b7d529084b /test/web | |
parent | c3cfe87c60c1edf046cc4656e7a7704db65a9c85 (diff) | |
parent | 376147fb828a75b5000262a376cee173bfc98551 (diff) | |
download | pleroma-6dd1575c64ccc2ffe82155f70935b2aa58d22684.tar.gz |
Merge branch 'issue/1509' into 'develop'
[#1509] purge media from cache after delete
See merge request pleroma/pleroma!2539
Diffstat (limited to 'test/web')
-rw-r--r-- | test/web/media_proxy/invalidations/http_test.exs | 35 | ||||
-rw-r--r-- | test/web/media_proxy/invalidations/script_test.exs | 20 |
2 files changed, 55 insertions, 0 deletions
diff --git a/test/web/media_proxy/invalidations/http_test.exs b/test/web/media_proxy/invalidations/http_test.exs new file mode 100644 index 000000000..8a3b4141c --- /dev/null +++ b/test/web/media_proxy/invalidations/http_test.exs @@ -0,0 +1,35 @@ +defmodule Pleroma.Web.MediaProxy.Invalidation.HttpTest do + use ExUnit.Case + alias Pleroma.Web.MediaProxy.Invalidation + + import ExUnit.CaptureLog + import Tesla.Mock + + test "logs hasn't error message when request is valid" do + mock(fn + %{method: :purge, url: "http://example.com/media/example.jpg"} -> + %Tesla.Env{status: 200} + end) + + refute capture_log(fn -> + assert Invalidation.Http.purge( + ["http://example.com/media/example.jpg"], + %{} + ) == {:ok, "success"} + end) =~ "Error while cache purge" + end + + test "it write error message in logs when request invalid" do + mock(fn + %{method: :purge, url: "http://example.com/media/example1.jpg"} -> + %Tesla.Env{status: 404} + end) + + assert capture_log(fn -> + assert Invalidation.Http.purge( + ["http://example.com/media/example1.jpg"], + %{} + ) == {:ok, "success"} + end) =~ "Error while cache purge: url - http://example.com/media/example1.jpg" + end +end diff --git a/test/web/media_proxy/invalidations/script_test.exs b/test/web/media_proxy/invalidations/script_test.exs new file mode 100644 index 000000000..1358963ab --- /dev/null +++ b/test/web/media_proxy/invalidations/script_test.exs @@ -0,0 +1,20 @@ +defmodule Pleroma.Web.MediaProxy.Invalidation.ScriptTest do + use ExUnit.Case + alias Pleroma.Web.MediaProxy.Invalidation + + import ExUnit.CaptureLog + + test "it logger error when script 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 Invalidation.Script.purge( + ["http://example.com/media/example.jpg"], + %{} + ) == {:error, "not found script path"} + end +end |