diff options
author | Maksim Pechnikov <parallel588@gmail.com> | 2020-05-29 17:09:25 +0300 |
---|---|---|
committer | Maksim Pechnikov <parallel588@gmail.com> | 2020-05-29 17:09:25 +0300 |
commit | dc5647d4da1b5057f31f73033674c5b36e23d57b (patch) | |
tree | 786f938bbdc294a41ea509f3ac6ea4ac2e937116 /test | |
parent | e4e96ea9140974b6c79e400828eafd2b95732a3f (diff) | |
download | pleroma-dc5647d4da1b5057f31f73033674c5b36e23d57b.tar.gz |
added test
Diffstat (limited to 'test')
-rw-r--r-- | test/object_test.exs | 34 | ||||
-rw-r--r-- | test/support/invalidation_mock.ex | 10 |
2 files changed, 34 insertions, 10 deletions
diff --git a/test/object_test.exs b/test/object_test.exs index 085469495..ca9f918ef 100644 --- a/test/object_test.exs +++ b/test/object_test.exs @@ -9,10 +9,12 @@ defmodule Pleroma.ObjectTest do import Pleroma.Factory import Tesla.Mock alias Pleroma.Activity + alias Pleroma.Config alias Pleroma.Object alias Pleroma.Repo alias Pleroma.Tests.ObanHelpers alias Pleroma.Web.CommonAPI + alias Pleroma.Web.MediaProxy.Invalidation setup do mock(fn env -> apply(HttpRequestMock, :request, [env]) end) @@ -114,8 +116,10 @@ defmodule Pleroma.ObjectTest do end test "in subdirectories" do - Pleroma.Config.put([Pleroma.Upload, :uploader], Pleroma.Uploaders.Local) - Pleroma.Config.put([:instance, :cleanup_attachments], true) + Config.put([Pleroma.Upload, :uploader], Pleroma.Uploaders.Local) + Config.put([:instance, :cleanup_attachments], true) + Config.put([:media_proxy, :invalidation, :enabled], true) + Config.put([:media_proxy, :invalidation, :provider], Invalidation.Mock) file = %Plug.Upload{ content_type: "image/jpg", @@ -145,12 +149,15 @@ defmodule Pleroma.ObjectTest do assert Object.get_by_id(attachment.id) == nil assert {:ok, []} == File.ls("#{uploads_dir}/#{path}") + assert Pleroma.Web.MediaProxy.in_deleted_urls(href) end test "with dedupe enabled" do - Pleroma.Config.put([Pleroma.Upload, :uploader], Pleroma.Uploaders.Local) - Pleroma.Config.put([Pleroma.Upload, :filters], [Pleroma.Upload.Filter.Dedupe]) - Pleroma.Config.put([:instance, :cleanup_attachments], true) + Config.put([Pleroma.Upload, :uploader], Pleroma.Uploaders.Local) + Config.put([Pleroma.Upload, :filters], [Pleroma.Upload.Filter.Dedupe]) + Config.put([:instance, :cleanup_attachments], true) + Config.put([:media_proxy, :invalidation, :enabled], true) + Config.put([:media_proxy, :invalidation, :provider], Invalidation.Mock) uploads_dir = Pleroma.Config.get!([Pleroma.Uploaders.Local, :uploads]) @@ -183,11 +190,14 @@ defmodule Pleroma.ObjectTest do assert Object.get_by_id(attachment.id) == nil assert {:ok, files} = File.ls(uploads_dir) refute filename in files + assert Pleroma.Web.MediaProxy.in_deleted_urls(href) end test "with objects that have legacy data.url attribute" do - Pleroma.Config.put([Pleroma.Upload, :uploader], Pleroma.Uploaders.Local) - Pleroma.Config.put([:instance, :cleanup_attachments], true) + Config.put([Pleroma.Upload, :uploader], Pleroma.Uploaders.Local) + Config.put([:instance, :cleanup_attachments], true) + Config.put([:media_proxy, :invalidation, :enabled], true) + Config.put([:media_proxy, :invalidation, :provider], Invalidation.Mock) file = %Plug.Upload{ content_type: "image/jpg", @@ -219,12 +229,15 @@ defmodule Pleroma.ObjectTest do assert Object.get_by_id(attachment.id) == nil assert {:ok, []} == File.ls("#{uploads_dir}/#{path}") + assert Pleroma.Web.MediaProxy.in_deleted_urls(href) end test "With custom base_url" do - Pleroma.Config.put([Pleroma.Upload, :uploader], Pleroma.Uploaders.Local) - Pleroma.Config.put([Pleroma.Upload, :base_url], "https://sub.domain.tld/dir/") - Pleroma.Config.put([:instance, :cleanup_attachments], true) + Config.put([Pleroma.Upload, :uploader], Pleroma.Uploaders.Local) + Config.put([Pleroma.Upload, :base_url], "https://sub.domain.tld/dir/") + Config.put([:instance, :cleanup_attachments], true) + Config.put([:media_proxy, :invalidation, :enabled], true) + Config.put([:media_proxy, :invalidation, :provider], Invalidation.Mock) file = %Plug.Upload{ content_type: "image/jpg", @@ -254,6 +267,7 @@ defmodule Pleroma.ObjectTest do assert Object.get_by_id(attachment.id) == nil assert {:ok, []} == File.ls("#{uploads_dir}/#{path}") + assert Pleroma.Web.MediaProxy.in_deleted_urls(href) end end diff --git a/test/support/invalidation_mock.ex b/test/support/invalidation_mock.ex new file mode 100644 index 000000000..3cba697dc --- /dev/null +++ b/test/support/invalidation_mock.ex @@ -0,0 +1,10 @@ +defmodule Pleroma.Web.MediaProxy.Invalidation.Mock do + @moduledoc false + + @behaviour Pleroma.Web.MediaProxy.Invalidation + + @impl Pleroma.Web.MediaProxy.Invalidation + def purge(urls, _opts) do + {:ok, urls} + end +end |