From c5fcb8fe129b05b3593fe11cd6cc254a2c841618 Mon Sep 17 00:00:00 2001 From: Kieran Date: Thu, 15 Feb 2024 17:51:19 -0800 Subject: [PATCH] Delete media items (#20) * Added method for deleting media files and their content * Adds controllers and methods for deleting media and files * Improved tmpfile setup and teardown for tests * Actually got tmpfile cleanup running once per suite run * Finally fixed flash messages --- config/test.exs | 4 +- lib/pinchflat/media.ex | 47 ++++++++++- lib/pinchflat/media/media_item.ex | 5 ++ lib/pinchflat/media_source.ex | 2 + .../components/core_components.ex | 53 +++++++------ .../media/media_item_controller.ex | 19 +++++ .../media/media_item_html/show.html.heex | 13 +++- .../searches/search_html/show.html.heex | 5 +- lib/pinchflat_web/router.ex | 3 +- test/pinchflat/media_test.exs | 73 ++++++++++++++++++ .../yt_dlp/download_option_builder_test.exs | 2 +- .../media_item_controller_test.exs | 61 ++++++++++++++- test/support/conn_case.ex | 1 + test/support/data_case.ex | 14 ++++ test/support/files/media.mkv | Bin 0 -> 70712 bytes test/support/fixtures/media_fixtures.ex | 28 ++++++- test/test_helper.exs | 8 ++ 17 files changed, 305 insertions(+), 33 deletions(-) create mode 100644 test/support/files/media.mkv diff --git a/config/test.exs b/config/test.exs index b2d86149..94e19197 100644 --- a/config/test.exs +++ b/config/test.exs @@ -3,8 +3,8 @@ import Config config :pinchflat, # Specifying backend data here makes mocking and local testing SUPER easy yt_dlp_executable: Path.join([File.cwd!(), "/test/support/scripts/yt-dlp-mocks/repeater.sh"]), - media_directory: Path.join([System.tmp_dir!(), "videos"]), - metadata_directory: Path.join([System.tmp_dir!(), "metadata"]) + media_directory: Path.join([System.tmp_dir!(), "test", "videos"]), + metadata_directory: Path.join([System.tmp_dir!(), "test", "metadata"]) config :pinchflat, Oban, testing: :manual diff --git a/lib/pinchflat/media.ex b/lib/pinchflat/media.ex index 6bd21ea9..14ae494f 100644 --- a/lib/pinchflat/media.ex +++ b/lib/pinchflat/media.ex @@ -88,6 +88,22 @@ defmodule Pinchflat.Media do """ def get_media_item!(id), do: Repo.get!(MediaItem, id) + @doc """ + Produces a flat list of the filesystem paths for a media_item's downloaded files + + Returns [binary()] + """ + def media_filepaths(media_item) do + mapped_struct = Map.from_struct(media_item) + + MediaItem.filepath_attributes() + |> Enum.map(fn + :subtitle_filepaths = field -> Enum.map(mapped_struct[field], fn [_, filepath] -> filepath end) + field -> List.wrap(mapped_struct[field]) + end) + |> List.flatten() + end + @doc """ Creates a media_item. Returns {:ok, %MediaItem{}} | {:error, %Ecto.Changeset{}}. """ @@ -107,7 +123,7 @@ defmodule Pinchflat.Media do end @doc """ - Deletes a media_item and its associated tasks. + Deletes a media_item and its associated tasks. Will leave files on disk. Returns {:ok, %MediaItem{}} | {:error, %Ecto.Changeset{}}. """ @@ -116,6 +132,35 @@ defmodule Pinchflat.Media do Repo.delete(media_item) end + @doc """ + Deletes the media_item's associated files. Will leave the media_item in the database. + + Returns {:ok, %MediaItem{}} + """ + def delete_attachments(media_item) do + media_item + |> media_filepaths() + |> Enum.each(&File.rm/1) + + # Fails if the directory is not empty + case File.rmdir(Path.dirname(media_item.media_filepath)) do + :ok -> {:ok, media_item} + {:error, :eexist} -> {:ok, media_item} + end + end + + @doc """ + Deletes the media_item and all associated files. Attempts to delete the root directory + but only if it is empty. + + Returns {:ok, %MediaItem{}} + """ + def delete_media_item_and_attachments(media_item) do + {:ok, _} = delete_attachments(media_item) + + delete_media_item(media_item) + end + @doc """ Returns an `%Ecto.Changeset{}` for tracking media_item changes. """ diff --git a/lib/pinchflat/media/media_item.ex b/lib/pinchflat/media/media_item.ex index 838cc14a..b43a1a2f 100644 --- a/lib/pinchflat/media/media_item.ex +++ b/lib/pinchflat/media/media_item.ex @@ -60,4 +60,9 @@ defmodule Pinchflat.Media.MediaItem do |> validate_required(@required_fields) |> unique_constraint([:media_id, :source_id]) end + + @doc false + def filepath_attributes do + ~w(media_filepath thumbnail_filepath metadata_filepath subtitle_filepaths)a + end end diff --git a/lib/pinchflat/media_source.ex b/lib/pinchflat/media_source.ex index e7c8abba..46fab79c 100644 --- a/lib/pinchflat/media_source.ex +++ b/lib/pinchflat/media_source.ex @@ -56,6 +56,8 @@ defmodule Pinchflat.MediaSource do @doc """ Deletes a source and it's associated tasks (of any state). + NOTE: will fail if the source has associated media items. Intended + for now, will almost certainly change in the future. Returns {:ok, %Source{}} | {:error, %Ecto.Changeset{}} """ diff --git a/lib/pinchflat_web/components/core_components.ex b/lib/pinchflat_web/components/core_components.ex index 5c7c073f..bcf8e022 100644 --- a/lib/pinchflat_web/components/core_components.ex +++ b/lib/pinchflat_web/components/core_components.ex @@ -112,24 +112,29 @@ defmodule PinchflatWeb.CoreComponents do
hide("##{@id}")} + class="pb-8" role="alert" - class={[ - "fixed top-2 right-2 mr-2 w-80 sm:w-96 z-50 rounded-lg p-3 ring-1", - @kind == :info && "bg-emerald-50 text-emerald-800 ring-emerald-500 fill-cyan-900", - @kind == :error && "bg-rose-50 text-rose-900 shadow-md ring-rose-500 fill-rose-900" - ]} {@rest} > -

- <.icon :if={@kind == :info} name="hero-information-circle-mini" class="h-4 w-4" /> - <.icon :if={@kind == :error} name="hero-exclamation-circle-mini" class="h-4 w-4" /> - <%= @title %> -

-

<%= msg %>

- +
+
+
+ <%= @title %> +
+

<%= msg %>

+
+ +
""" end @@ -146,7 +151,7 @@ defmodule PinchflatWeb.CoreComponents do def flash_group(assigns) do ~H""" -
+
<.flash kind={:info} title="Success!" flash={@flash} /> <.flash kind={:error} title="Error!" flash={@flash} /> <.flash @@ -632,9 +637,11 @@ defmodule PinchflatWeb.CoreComponents do def show(js \\ %JS{}, selector) do JS.show(js, to: selector, - transition: - {"transition-all transform ease-out duration-300", "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95", - "opacity-100 translate-y-0 sm:scale-100"} + transition: { + "transition-all transform ease-out duration-300", + "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95", + "opacity-100 translate-y-0 sm:scale-100" + } ) end @@ -642,9 +649,11 @@ defmodule PinchflatWeb.CoreComponents do JS.hide(js, to: selector, time: 200, - transition: - {"transition-all transform ease-in duration-200", "opacity-100 translate-y-0 sm:scale-100", - "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"} + transition: { + "transition-all transform ease-in duration-200", + "opacity-100 translate-y-0 sm:scale-100", + "opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95" + } ) end diff --git a/lib/pinchflat_web/controllers/media/media_item_controller.ex b/lib/pinchflat_web/controllers/media/media_item_controller.ex index 3db81d4b..398bd327 100644 --- a/lib/pinchflat_web/controllers/media/media_item_controller.ex +++ b/lib/pinchflat_web/controllers/media/media_item_controller.ex @@ -8,4 +8,23 @@ defmodule PinchflatWeb.Media.MediaItemController do render(conn, :show, media_item: media_item) end + + def delete(conn, %{"id" => id} = params) do + delete_files = Map.get(params, "delete_files", false) + media_item = Media.get_media_item!(id) + + if delete_files do + {:ok, _} = Media.delete_media_item_and_attachments(media_item) + + conn + |> put_flash(:info, "Record and files deleted successfully.") + |> redirect(to: ~p"/sources/#{media_item.source_id}") + else + {:ok, _} = Media.delete_media_item(media_item) + + conn + |> put_flash(:info, "Record deleted successfully. Files were not deleted.") + |> redirect(to: ~p"/sources/#{media_item.source_id}") + end + end end diff --git a/lib/pinchflat_web/controllers/media/media_item_html/show.html.heex b/lib/pinchflat_web/controllers/media/media_item_html/show.html.heex index ac65a286..f23de2c4 100644 --- a/lib/pinchflat_web/controllers/media/media_item_html/show.html.heex +++ b/lib/pinchflat_web/controllers/media/media_item_html/show.html.heex @@ -1,12 +1,23 @@
- <.link :if={@conn.params["source_id"]} navigate={~p"/sources/#{@media_item.source_id}"}> + <.link navigate={~p"/sources/#{@media_item.source_id}"}> <.icon name="hero-arrow-left" class="w-10 h-10 hover:dark:text-white" />

Media Item #<%= @media_item.id %>

+
diff --git a/lib/pinchflat_web/controllers/searches/search_html/show.html.heex b/lib/pinchflat_web/controllers/searches/search_html/show.html.heex index 996701ea..4d2bfd55 100644 --- a/lib/pinchflat_web/controllers/searches/search_html/show.html.heex +++ b/lib/pinchflat_web/controllers/searches/search_html/show.html.heex @@ -16,7 +16,10 @@ <.highlight_search_terms text={result.matching_search_term} /> <:col :let={result} label="" class="flex place-content-evenly"> - <.link navigate={~p"/media/#{result.id}"} class="hover:text-secondary duration-200 ease-in-out mx-0.5"> + <.link + navigate={~p"/sources/#{result.source_id}/media/#{result.id}"} + class="hover:text-secondary duration-200 ease-in-out mx-0.5" + > <.icon name="hero-eye" /> diff --git a/lib/pinchflat_web/router.ex b/lib/pinchflat_web/router.ex index 55c9fcb4..04700293 100644 --- a/lib/pinchflat_web/router.ex +++ b/lib/pinchflat_web/router.ex @@ -20,11 +20,10 @@ defmodule PinchflatWeb.Router do get "/", PageController, :home resources "/media_profiles", MediaProfiles.MediaProfileController - resources "/media", Media.MediaItemController, only: [:show] resources "/search", Searches.SearchController, only: [:show], singleton: true resources "/sources", MediaSources.SourceController do - resources "/media", Media.MediaItemController, only: [:show] + resources "/media", Media.MediaItemController, only: [:show, :delete] end end diff --git a/test/pinchflat/media_test.exs b/test/pinchflat/media_test.exs index 8fbe8d70..77d267d1 100644 --- a/test/pinchflat/media_test.exs +++ b/test/pinchflat/media_test.exs @@ -221,6 +221,24 @@ defmodule Pinchflat.MediaTest do end end + describe "media_filepaths/1" do + test "returns filepaths in a flat list" do + filepaths = %{ + media_filepath: "/video/test.mp4", + thumbnail_filepath: "/video/test.jpg", + subtitle_filepaths: [["en", "video/test.srt"]] + } + + media_item = media_item_fixture(filepaths) + + assert Media.media_filepaths(media_item) == [ + "/video/test.mp4", + "/video/test.jpg", + "video/test.srt" + ] + end + end + describe "create_media_item/1" do test "creating with valid data creates a media_item" do valid_attrs = %{ @@ -282,6 +300,61 @@ defmodule Pinchflat.MediaTest do end end + describe "delete_attachments/1" do + test "deletes the media item's files" do + media_item = media_item_with_attachments() + + assert {:ok, _} = Media.delete_attachments(media_item) + refute File.exists?(media_item.media_filepath) + end + + test "does not delete the media item" do + media_item = media_item_with_attachments() + + assert {:ok, _} = Media.delete_attachments(media_item) + + assert Repo.reload!(media_item) + end + + test "deletes the parent folder if it is empty" do + media_item = media_item_with_attachments() + root_directory = Path.dirname(media_item.media_filepath) + + assert {:ok, _} = Media.delete_attachments(media_item) + refute File.exists?(root_directory) + end + + test "does not delete the parent folder if it is not empty" do + media_item = media_item_with_attachments() + root_directory = Path.dirname(media_item.media_filepath) + File.touch(Path.join([root_directory, "test.txt"])) + + assert {:ok, _} = Media.delete_attachments(media_item) + assert File.exists?(root_directory) + + :ok = File.rm(Path.join([root_directory, "test.txt"])) + :ok = File.rmdir(root_directory) + end + end + + describe "delete_media_item_and_attachments/1" do + setup do + media_item = media_item_with_attachments() + {:ok, media_item: media_item} + end + + test "deletes the media item", %{media_item: media_item} do + assert {:ok, _} = Media.delete_media_item_and_attachments(media_item) + assert_raise Ecto.NoResultsError, fn -> Media.get_media_item!(media_item.id) end + end + + test "deletes associated files", %{media_item: media_item} do + assert File.exists?(media_item.media_filepath) + assert {:ok, _} = Media.delete_media_item_and_attachments(media_item) + refute File.exists?(media_item.media_filepath) + end + end + describe "change_media_item/1" do test "change_media_item/1 returns a media_item changeset" do media_item = media_item_fixture() diff --git a/test/pinchflat/profiles/options/yt_dlp/download_option_builder_test.exs b/test/pinchflat/profiles/options/yt_dlp/download_option_builder_test.exs index 32d3ffad..56942ce7 100644 --- a/test/pinchflat/profiles/options/yt_dlp/download_option_builder_test.exs +++ b/test/pinchflat/profiles/options/yt_dlp/download_option_builder_test.exs @@ -12,7 +12,7 @@ defmodule Pinchflat.Profiles.Options.YtDlp.DownloadOptionBuilderTest do test "it generates an expanded output path based on the given template" do assert {:ok, res} = DownloadOptionBuilder.build(@media_profile) - assert {:output, "/tmp/videos/%(title)S.%(ext)s"} in res + assert {:output, "/tmp/test/videos/%(title)S.%(ext)s"} in res end end diff --git a/test/pinchflat_web/controllers/media_item_controller_test.exs b/test/pinchflat_web/controllers/media_item_controller_test.exs index eb0eab2d..002f3bd3 100644 --- a/test/pinchflat_web/controllers/media_item_controller_test.exs +++ b/test/pinchflat_web/controllers/media_item_controller_test.exs @@ -3,15 +3,74 @@ defmodule PinchflatWeb.MediaItemControllerTest do import Pinchflat.MediaFixtures + alias Pinchflat.Repo + alias Pinchflat.Media + describe "show media" do setup [:create_media_item] test "renders the page", %{conn: conn, media_item: media_item} do - conn = get(conn, ~p"/media/#{media_item}") + conn = get(conn, ~p"/sources/#{media_item.source_id}/media/#{media_item}") assert html_response(conn, 200) =~ "Media Item ##{media_item.id}" end end + describe "delete media when just deleting the records" do + setup do + media_item = media_item_with_attachments() + + on_exit(fn -> + Media.delete_attachments(media_item) + end) + + %{media_item: media_item} + end + + test "the media item is deleted", %{conn: conn, media_item: media_item} do + delete(conn, ~p"/sources/#{media_item.source_id}/media/#{media_item.id}") + + assert_raise Ecto.NoResultsError, fn -> Repo.reload!(media_item) end + end + + test "the files are not deleted", %{conn: conn, media_item: media_item} do + delete(conn, ~p"/sources/#{media_item.source_id}/media/#{media_item.id}") + + assert File.exists?(media_item.media_filepath) + end + + test "redirects to the source page", %{conn: conn, media_item: media_item} do + conn = delete(conn, ~p"/sources/#{media_item.source_id}/media/#{media_item.id}") + + assert redirected_to(conn) == ~p"/sources/#{media_item.source_id}" + end + end + + describe "delete media when deleting the records and files" do + setup do + media_item = media_item_with_attachments() + + %{media_item: media_item} + end + + test "the media item is deleted", %{conn: conn, media_item: media_item} do + delete(conn, ~p"/sources/#{media_item.source_id}/media/#{media_item.id}?delete_files=true") + + assert_raise Ecto.NoResultsError, fn -> Repo.reload!(media_item) end + end + + test "the files are deleted", %{conn: conn, media_item: media_item} do + delete(conn, ~p"/sources/#{media_item.source_id}/media/#{media_item.id}?delete_files=true") + + refute File.exists?(media_item.media_filepath) + end + + test "redirects to the source page", %{conn: conn, media_item: media_item} do + conn = delete(conn, ~p"/sources/#{media_item.source_id}/media/#{media_item.id}?delete_files=true") + + assert redirected_to(conn) == ~p"/sources/#{media_item.source_id}" + end + end + defp create_media_item(_) do media_item = media_item_fixture() %{media_item: media_item} diff --git a/test/support/conn_case.ex b/test/support/conn_case.ex index ff478a0f..3aa5fce9 100644 --- a/test/support/conn_case.ex +++ b/test/support/conn_case.ex @@ -34,6 +34,7 @@ defmodule PinchflatWeb.ConnCase do setup tags do Pinchflat.DataCase.setup_sandbox(tags) + Pinchflat.DataCase.setup_temp_filepaths() {:ok, conn: Phoenix.ConnTest.build_conn()} end end diff --git a/test/support/data_case.ex b/test/support/data_case.ex index d2177491..5bf7f10b 100644 --- a/test/support/data_case.ex +++ b/test/support/data_case.ex @@ -32,6 +32,20 @@ defmodule Pinchflat.DataCase do setup tags do Pinchflat.DataCase.setup_sandbox(tags) + Pinchflat.DataCase.setup_temp_filepaths() + :ok + end + + @doc """ + Sets up the temp filepaths for the media and metadata directories. + """ + def setup_temp_filepaths do + File.rm_rf!(Application.get_env(:pinchflat, :media_directory)) + File.rm_rf!(Application.get_env(:pinchflat, :metadata_directory)) + + File.mkdir_p!(Application.get_env(:pinchflat, :media_directory)) + File.mkdir_p!(Application.get_env(:pinchflat, :metadata_directory)) + :ok end diff --git a/test/support/files/media.mkv b/test/support/files/media.mkv new file mode 100644 index 0000000000000000000000000000000000000000..b0b02c19ece933fcdb7a02e4afde5459fbfab1f5 GIT binary patch literal 70712 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 tj`tC + File.rm_rf!(Application.get_env(:pinchflat, :media_directory)) + File.rm_rf!(Application.get_env(:pinchflat, :metadata_directory)) + + File.mkdir_p!(Application.get_env(:pinchflat, :media_directory)) + File.mkdir_p!(Application.get_env(:pinchflat, :metadata_directory)) +end)