From 7d62f7c7df3af96286fc7729d01203a87a1b64bc Mon Sep 17 00:00:00 2001 From: Kieran Date: Tue, 20 Feb 2024 09:48:20 -0800 Subject: [PATCH] Rename media sources (#25) * Renamed MediaSource to Sources * Renamed MediaItem controller namespace --- .iex.exs | 4 +- lib/pinchflat/media.ex | 2 +- lib/pinchflat/media/media_item.ex | 2 +- lib/pinchflat/media_client/source_details.ex | 2 +- lib/pinchflat/media_source/source.ex | 2 +- lib/pinchflat/profiles/media_profile.ex | 2 +- lib/pinchflat/{media_source.ex => sources.ex} | 6 +- lib/pinchflat/tasks.ex | 2 +- lib/pinchflat/tasks/source_tasks.ex | 6 +- lib/pinchflat/tasks/task.ex | 2 +- .../workers/media_indexing_worker.ex | 4 +- .../media_item_controller.ex | 2 +- .../{media => media_items}/media_item_html.ex | 2 +- .../media_item_html/show.html.heex | 0 .../controllers/pages/page_controller.ex | 2 +- .../source_controller.ex | 26 +++---- .../{media_sources => sources}/source_html.ex | 2 +- .../source_html/edit.html.heex | 0 .../source_html/index.html.heex | 0 .../source_html/new.html.heex | 0 .../source_html/show.html.heex | 0 .../source_html/source_form.html.heex | 0 lib/pinchflat_web/router.ex | 4 +- .../backends/yt_dlp/video_collection_test.exs | 2 +- .../media_client/source_details_test.exs | 2 +- test/pinchflat/media_test.exs | 2 +- ...media_source_test.exs => sources_test.exs} | 68 +++++++++---------- test/pinchflat/tasks/source_tasks_test.exs | 2 +- test/pinchflat/tasks_test.exs | 2 +- .../workers/media_indexing_worker_test.exs | 2 +- .../workers/video_download_worker_test.exs | 4 +- .../controllers/page_controller_test.exs | 2 +- .../controllers/source_controller_test.exs | 2 +- test/support/fixtures/media_fixtures.ex | 4 +- ...source_fixtures.ex => sources_fixtures.ex} | 6 +- test/support/fixtures/tasks_fixtures.ex | 4 +- 36 files changed, 87 insertions(+), 87 deletions(-) rename lib/pinchflat/{media_source.ex => sources.ex} (98%) rename lib/pinchflat_web/controllers/{media => media_items}/media_item_controller.ex (93%) rename lib/pinchflat_web/controllers/{media => media_items}/media_item_html.ex (57%) rename lib/pinchflat_web/controllers/{media => media_items}/media_item_html/show.html.heex (100%) rename lib/pinchflat_web/controllers/{media_sources => sources}/source_controller.ex (78%) rename lib/pinchflat_web/controllers/{media_sources => sources}/source_html.ex (93%) rename lib/pinchflat_web/controllers/{media_sources => sources}/source_html/edit.html.heex (100%) rename lib/pinchflat_web/controllers/{media_sources => sources}/source_html/index.html.heex (100%) rename lib/pinchflat_web/controllers/{media_sources => sources}/source_html/new.html.heex (100%) rename lib/pinchflat_web/controllers/{media_sources => sources}/source_html/show.html.heex (100%) rename lib/pinchflat_web/controllers/{media_sources => sources}/source_html/source_form.html.heex (100%) rename test/pinchflat/{media_source_test.exs => sources_test.exs} (78%) rename test/support/fixtures/{media_source_fixtures.ex => sources_fixtures.ex} (91%) diff --git a/.iex.exs b/.iex.exs index 4ff1900..f9b879b 100644 --- a/.iex.exs +++ b/.iex.exs @@ -4,13 +4,13 @@ alias Pinchflat.Tasks.Task alias Pinchflat.Media.MediaItem alias Pinchflat.Tasks.SourceTasks alias Pinchflat.Media.MediaMetadata -alias Pinchflat.MediaSource.Source +alias Pinchflat.Sources.Source alias Pinchflat.Profiles.MediaProfile alias Pinchflat.Tasks alias Pinchflat.Media alias Pinchflat.Profiles -alias Pinchflat.MediaSource +alias Pinchflat.Sources alias Pinchflat.MediaClient.{SourceDetails, VideoDownloader} diff --git a/lib/pinchflat/media.ex b/lib/pinchflat/media.ex index 0eb996a..05931a9 100644 --- a/lib/pinchflat/media.ex +++ b/lib/pinchflat/media.ex @@ -8,7 +8,7 @@ defmodule Pinchflat.Media do alias Pinchflat.Repo alias Pinchflat.Tasks alias Pinchflat.Media.MediaItem - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources.Source @doc """ Returns the list of media_items. Returns [%MediaItem{}, ...]. diff --git a/lib/pinchflat/media/media_item.ex b/lib/pinchflat/media/media_item.ex index c9c99d6..b491bd7 100644 --- a/lib/pinchflat/media/media_item.ex +++ b/lib/pinchflat/media/media_item.ex @@ -7,7 +7,7 @@ defmodule Pinchflat.Media.MediaItem do import Ecto.Changeset alias Pinchflat.Tasks.Task - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources.Source alias Pinchflat.Media.MediaMetadata alias Pinchflat.Media.MediaItemSearchIndex diff --git a/lib/pinchflat/media_client/source_details.ex b/lib/pinchflat/media_client/source_details.ex index 488edda..26f205a 100644 --- a/lib/pinchflat/media_client/source_details.ex +++ b/lib/pinchflat/media_client/source_details.ex @@ -6,7 +6,7 @@ defmodule Pinchflat.MediaClient.SourceDetails do it open-ish for future expansion (just in case). """ - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources.Source alias Pinchflat.MediaClient.Backends.YtDlp.VideoCollection, as: YtDlpSource @doc """ diff --git a/lib/pinchflat/media_source/source.ex b/lib/pinchflat/media_source/source.ex index 572b35d..3ca2039 100644 --- a/lib/pinchflat/media_source/source.ex +++ b/lib/pinchflat/media_source/source.ex @@ -1,4 +1,4 @@ -defmodule Pinchflat.MediaSource.Source do +defmodule Pinchflat.Sources.Source do @moduledoc """ The Source schema. """ diff --git a/lib/pinchflat/profiles/media_profile.ex b/lib/pinchflat/profiles/media_profile.ex index 25bd38c..cc1a7fa 100644 --- a/lib/pinchflat/profiles/media_profile.ex +++ b/lib/pinchflat/profiles/media_profile.ex @@ -6,7 +6,7 @@ defmodule Pinchflat.Profiles.MediaProfile do use Ecto.Schema import Ecto.Changeset - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources.Source @allowed_fields ~w( name diff --git a/lib/pinchflat/media_source.ex b/lib/pinchflat/sources.ex similarity index 98% rename from lib/pinchflat/media_source.ex rename to lib/pinchflat/sources.ex index 46fab79..d7f13ab 100644 --- a/lib/pinchflat/media_source.ex +++ b/lib/pinchflat/sources.ex @@ -1,6 +1,6 @@ -defmodule Pinchflat.MediaSource do +defmodule Pinchflat.Sources do @moduledoc """ - The MediaSource context. + The Sources context. """ import Ecto.Query, warn: false @@ -8,7 +8,7 @@ defmodule Pinchflat.MediaSource do alias Pinchflat.Tasks alias Pinchflat.Tasks.SourceTasks - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources.Source alias Pinchflat.MediaClient.SourceDetails @doc """ diff --git a/lib/pinchflat/tasks.ex b/lib/pinchflat/tasks.ex index df73350..0829a79 100644 --- a/lib/pinchflat/tasks.ex +++ b/lib/pinchflat/tasks.ex @@ -8,7 +8,7 @@ defmodule Pinchflat.Tasks do alias Pinchflat.Tasks.Task alias Pinchflat.Media.MediaItem - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources.Source @doc """ Returns the list of tasks. Returns [%Task{}, ...] diff --git a/lib/pinchflat/tasks/source_tasks.ex b/lib/pinchflat/tasks/source_tasks.ex index 714b6b3..be2d2a0 100644 --- a/lib/pinchflat/tasks/source_tasks.ex +++ b/lib/pinchflat/tasks/source_tasks.ex @@ -5,8 +5,8 @@ defmodule Pinchflat.Tasks.SourceTasks do alias Pinchflat.Media alias Pinchflat.Tasks - alias Pinchflat.MediaSource - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources + alias Pinchflat.Sources.Source alias Pinchflat.MediaClient.SourceDetails alias Pinchflat.Workers.MediaIndexingWorker alias Pinchflat.Workers.VideoDownloadWorker @@ -43,7 +43,7 @@ defmodule Pinchflat.Tasks.SourceTasks do """ def index_media_items(%Source{} = source) do {:ok, media_attributes} = SourceDetails.get_media_attributes(source.original_url) - MediaSource.update_source(source, %{last_indexed_at: DateTime.utc_now()}) + Sources.update_source(source, %{last_indexed_at: DateTime.utc_now()}) media_attributes |> Enum.map(fn media_attrs -> diff --git a/lib/pinchflat/tasks/task.ex b/lib/pinchflat/tasks/task.ex index 34cf113..1a4f529 100644 --- a/lib/pinchflat/tasks/task.ex +++ b/lib/pinchflat/tasks/task.ex @@ -7,7 +7,7 @@ defmodule Pinchflat.Tasks.Task do import Ecto.Changeset alias Pinchflat.Media.MediaItem - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources.Source schema "tasks" do belongs_to :job, Oban.Job diff --git a/lib/pinchflat/workers/media_indexing_worker.ex b/lib/pinchflat/workers/media_indexing_worker.ex index 3a71236..6dc0c32 100644 --- a/lib/pinchflat/workers/media_indexing_worker.ex +++ b/lib/pinchflat/workers/media_indexing_worker.ex @@ -8,7 +8,7 @@ defmodule Pinchflat.Workers.MediaIndexingWorker do alias __MODULE__ alias Pinchflat.Tasks - alias Pinchflat.MediaSource + alias Pinchflat.Sources alias Pinchflat.Tasks.SourceTasks @impl Oban.Worker @@ -37,7 +37,7 @@ defmodule Pinchflat.Workers.MediaIndexingWorker do Returns :ok | {:ok, %Task{}} """ def perform(%Oban.Job{args: %{"id" => source_id}}) do - source = MediaSource.get_source!(source_id) + source = Sources.get_source!(source_id) if source.index_frequency_minutes <= 0 do :ok diff --git a/lib/pinchflat_web/controllers/media/media_item_controller.ex b/lib/pinchflat_web/controllers/media_items/media_item_controller.ex similarity index 93% rename from lib/pinchflat_web/controllers/media/media_item_controller.ex rename to lib/pinchflat_web/controllers/media_items/media_item_controller.ex index 398bd32..4248cac 100644 --- a/lib/pinchflat_web/controllers/media/media_item_controller.ex +++ b/lib/pinchflat_web/controllers/media_items/media_item_controller.ex @@ -1,4 +1,4 @@ -defmodule PinchflatWeb.Media.MediaItemController do +defmodule PinchflatWeb.MediaItems.MediaItemController do use PinchflatWeb, :controller alias Pinchflat.Media diff --git a/lib/pinchflat_web/controllers/media/media_item_html.ex b/lib/pinchflat_web/controllers/media_items/media_item_html.ex similarity index 57% rename from lib/pinchflat_web/controllers/media/media_item_html.ex rename to lib/pinchflat_web/controllers/media_items/media_item_html.ex index d0c0667..ffae16a 100644 --- a/lib/pinchflat_web/controllers/media/media_item_html.ex +++ b/lib/pinchflat_web/controllers/media_items/media_item_html.ex @@ -1,4 +1,4 @@ -defmodule PinchflatWeb.Media.MediaItemHTML do +defmodule PinchflatWeb.MediaItems.MediaItemHTML do use PinchflatWeb, :html embed_templates "media_item_html/*" diff --git a/lib/pinchflat_web/controllers/media/media_item_html/show.html.heex b/lib/pinchflat_web/controllers/media_items/media_item_html/show.html.heex similarity index 100% rename from lib/pinchflat_web/controllers/media/media_item_html/show.html.heex rename to lib/pinchflat_web/controllers/media_items/media_item_html/show.html.heex diff --git a/lib/pinchflat_web/controllers/pages/page_controller.ex b/lib/pinchflat_web/controllers/pages/page_controller.ex index 7c26cdf..8f5a0bc 100644 --- a/lib/pinchflat_web/controllers/pages/page_controller.ex +++ b/lib/pinchflat_web/controllers/pages/page_controller.ex @@ -2,7 +2,7 @@ defmodule PinchflatWeb.Pages.PageController do use PinchflatWeb, :controller alias Pinchflat.Repo - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources.Source alias Pinchflat.Profiles.MediaProfile def home(conn, params) do diff --git a/lib/pinchflat_web/controllers/media_sources/source_controller.ex b/lib/pinchflat_web/controllers/sources/source_controller.ex similarity index 78% rename from lib/pinchflat_web/controllers/media_sources/source_controller.ex rename to lib/pinchflat_web/controllers/sources/source_controller.ex index 58aaf90..b78245e 100644 --- a/lib/pinchflat_web/controllers/media_sources/source_controller.ex +++ b/lib/pinchflat_web/controllers/sources/source_controller.ex @@ -1,20 +1,20 @@ -defmodule PinchflatWeb.MediaSources.SourceController do +defmodule PinchflatWeb.Sources.SourceController do use PinchflatWeb, :controller alias Pinchflat.Repo alias Pinchflat.Media alias Pinchflat.Profiles - alias Pinchflat.MediaSource - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources + alias Pinchflat.Sources.Source def index(conn, _params) do - sources = Repo.preload(MediaSource.list_sources(), :media_profile) + sources = Repo.preload(Sources.list_sources(), :media_profile) render(conn, :index, sources: sources) end def new(conn, _params) do - changeset = MediaSource.change_source(%Source{}) + changeset = Sources.change_source(%Source{}) if get_session(conn, :onboarding) do render(conn, :new, @@ -28,7 +28,7 @@ defmodule PinchflatWeb.MediaSources.SourceController do end def create(conn, %{"source" => source_params}) do - case MediaSource.create_source(source_params) do + case Sources.create_source(source_params) do {:ok, source} -> redirect_location = if get_session(conn, :onboarding), do: ~p"/?onboarding=1", else: ~p"/sources/#{source}" @@ -53,7 +53,7 @@ defmodule PinchflatWeb.MediaSources.SourceController do def show(conn, %{"id" => id}) do source = id - |> MediaSource.get_source!() + |> Sources.get_source!() |> Repo.preload(:media_profile) pending_media = Media.list_pending_media_items_for(source) @@ -63,16 +63,16 @@ defmodule PinchflatWeb.MediaSources.SourceController do end def edit(conn, %{"id" => id}) do - source = MediaSource.get_source!(id) - changeset = MediaSource.change_source(source) + source = Sources.get_source!(id) + changeset = Sources.change_source(source) render(conn, :edit, source: source, changeset: changeset, media_profiles: media_profiles()) end def update(conn, %{"id" => id, "source" => source_params}) do - source = MediaSource.get_source!(id) + source = Sources.get_source!(id) - case MediaSource.update_source(source, source_params) do + case Sources.update_source(source, source_params) do {:ok, source} -> conn |> put_flash(:info, "Source updated successfully.") @@ -88,8 +88,8 @@ defmodule PinchflatWeb.MediaSources.SourceController do end def delete(conn, %{"id" => id}) do - source = MediaSource.get_source!(id) - {:ok, _source} = MediaSource.delete_source(source) + source = Sources.get_source!(id) + {:ok, _source} = Sources.delete_source(source) conn |> put_flash(:info, "Source deleted successfully.") diff --git a/lib/pinchflat_web/controllers/media_sources/source_html.ex b/lib/pinchflat_web/controllers/sources/source_html.ex similarity index 93% rename from lib/pinchflat_web/controllers/media_sources/source_html.ex rename to lib/pinchflat_web/controllers/sources/source_html.ex index 7f790cd..9302294 100644 --- a/lib/pinchflat_web/controllers/media_sources/source_html.ex +++ b/lib/pinchflat_web/controllers/sources/source_html.ex @@ -1,4 +1,4 @@ -defmodule PinchflatWeb.MediaSources.SourceHTML do +defmodule PinchflatWeb.Sources.SourceHTML do use PinchflatWeb, :html embed_templates "source_html/*" diff --git a/lib/pinchflat_web/controllers/media_sources/source_html/edit.html.heex b/lib/pinchflat_web/controllers/sources/source_html/edit.html.heex similarity index 100% rename from lib/pinchflat_web/controllers/media_sources/source_html/edit.html.heex rename to lib/pinchflat_web/controllers/sources/source_html/edit.html.heex diff --git a/lib/pinchflat_web/controllers/media_sources/source_html/index.html.heex b/lib/pinchflat_web/controllers/sources/source_html/index.html.heex similarity index 100% rename from lib/pinchflat_web/controllers/media_sources/source_html/index.html.heex rename to lib/pinchflat_web/controllers/sources/source_html/index.html.heex diff --git a/lib/pinchflat_web/controllers/media_sources/source_html/new.html.heex b/lib/pinchflat_web/controllers/sources/source_html/new.html.heex similarity index 100% rename from lib/pinchflat_web/controllers/media_sources/source_html/new.html.heex rename to lib/pinchflat_web/controllers/sources/source_html/new.html.heex diff --git a/lib/pinchflat_web/controllers/media_sources/source_html/show.html.heex b/lib/pinchflat_web/controllers/sources/source_html/show.html.heex similarity index 100% rename from lib/pinchflat_web/controllers/media_sources/source_html/show.html.heex rename to lib/pinchflat_web/controllers/sources/source_html/show.html.heex diff --git a/lib/pinchflat_web/controllers/media_sources/source_html/source_form.html.heex b/lib/pinchflat_web/controllers/sources/source_html/source_form.html.heex similarity index 100% rename from lib/pinchflat_web/controllers/media_sources/source_html/source_form.html.heex rename to lib/pinchflat_web/controllers/sources/source_html/source_form.html.heex diff --git a/lib/pinchflat_web/router.ex b/lib/pinchflat_web/router.ex index 9ec45b6..187a2d0 100644 --- a/lib/pinchflat_web/router.ex +++ b/lib/pinchflat_web/router.ex @@ -22,8 +22,8 @@ defmodule PinchflatWeb.Router do resources "/media_profiles", MediaProfiles.MediaProfileController resources "/search", Searches.SearchController, only: [:show], singleton: true - resources "/sources", MediaSources.SourceController do - resources "/media", Media.MediaItemController, only: [:show, :delete] + resources "/sources", Sources.SourceController do + resources "/media", MediaItems.MediaItemController, only: [:show, :delete] end end diff --git a/test/pinchflat/media_client/backends/yt_dlp/video_collection_test.exs b/test/pinchflat/media_client/backends/yt_dlp/video_collection_test.exs index 0fd13dc..b23bfcf 100644 --- a/test/pinchflat/media_client/backends/yt_dlp/video_collection_test.exs +++ b/test/pinchflat/media_client/backends/yt_dlp/video_collection_test.exs @@ -1,7 +1,7 @@ defmodule Pinchflat.MediaClient.Backends.YtDlp.VideoCollectionTest do use ExUnit.Case, async: true import Mox - import Pinchflat.MediaSourceFixtures + import Pinchflat.SourcesFixtures alias Pinchflat.MediaClient.Backends.YtDlp.VideoCollection diff --git a/test/pinchflat/media_client/source_details_test.exs b/test/pinchflat/media_client/source_details_test.exs index 8ddb517..91b9871 100644 --- a/test/pinchflat/media_client/source_details_test.exs +++ b/test/pinchflat/media_client/source_details_test.exs @@ -2,7 +2,7 @@ defmodule Pinchflat.MediaClient.SourceDetailsTest do use Pinchflat.DataCase import Mox import Pinchflat.ProfilesFixtures - import Pinchflat.MediaSourceFixtures + import Pinchflat.SourcesFixtures alias Pinchflat.MediaClient.SourceDetails diff --git a/test/pinchflat/media_test.exs b/test/pinchflat/media_test.exs index faeb656..cb9ab77 100644 --- a/test/pinchflat/media_test.exs +++ b/test/pinchflat/media_test.exs @@ -4,7 +4,7 @@ defmodule Pinchflat.MediaTest do import Pinchflat.TasksFixtures import Pinchflat.MediaFixtures import Pinchflat.ProfilesFixtures - import Pinchflat.MediaSourceFixtures + import Pinchflat.SourcesFixtures alias Pinchflat.Media alias Pinchflat.Media.MediaItem diff --git a/test/pinchflat/media_source_test.exs b/test/pinchflat/sources_test.exs similarity index 78% rename from test/pinchflat/media_source_test.exs rename to test/pinchflat/sources_test.exs index e5e75c4..495e288 100644 --- a/test/pinchflat/media_source_test.exs +++ b/test/pinchflat/sources_test.exs @@ -1,14 +1,14 @@ -defmodule Pinchflat.MediaSourceTest do +defmodule Pinchflat.SourcesTest do use Pinchflat.DataCase import Mox import Pinchflat.TasksFixtures import Pinchflat.MediaFixtures import Pinchflat.ProfilesFixtures - import Pinchflat.MediaSourceFixtures + import Pinchflat.SourcesFixtures - alias Pinchflat.MediaSource + alias Pinchflat.Sources alias Pinchflat.Tasks.SourceTasks - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources.Source alias Pinchflat.Workers.MediaIndexingWorker alias Pinchflat.Workers.VideoDownloadWorker @@ -19,14 +19,14 @@ defmodule Pinchflat.MediaSourceTest do describe "list_sources/0" do test "it returns all sources" do source = source_fixture() - assert MediaSource.list_sources() == [source] + assert Sources.list_sources() == [source] end end describe "get_source!/1" do test "it returns the source with given id" do source = source_fixture() - assert MediaSource.get_source!(source.id) == source + assert Sources.get_source!(source.id) == source end end @@ -40,7 +40,7 @@ defmodule Pinchflat.MediaSourceTest do collection_type: "channel" } - assert {:ok, %Source{} = source} = MediaSource.create_source(valid_attrs) + assert {:ok, %Source{} = source} = Sources.create_source(valid_attrs) assert source.collection_name == "some channel name" assert String.starts_with?(source.collection_id, "some_channel_id_") end @@ -54,13 +54,13 @@ defmodule Pinchflat.MediaSourceTest do collection_type: "playlist" } - assert {:ok, %Source{} = source} = MediaSource.create_source(valid_attrs) + assert {:ok, %Source{} = source} = Sources.create_source(valid_attrs) assert source.collection_name == "some playlist name" assert String.starts_with?(source.collection_id, "some_playlist_id_") end test "creation with invalid data returns error changeset" do - assert {:error, %Ecto.Changeset{}} = MediaSource.create_source(@invalid_source_attrs) + assert {:error, %Ecto.Changeset{}} = Sources.create_source(@invalid_source_attrs) end test "creation enforces uniqueness of collection_id scoped to the media_profile" do @@ -78,8 +78,8 @@ defmodule Pinchflat.MediaSourceTest do collection_type: "channel" } - assert {:ok, %Source{}} = MediaSource.create_source(valid_once_attrs) - assert {:error, %Ecto.Changeset{}} = MediaSource.create_source(valid_once_attrs) + assert {:ok, %Source{}} = Sources.create_source(valid_once_attrs) + assert {:error, %Ecto.Changeset{}} = Sources.create_source(valid_once_attrs) end test "creation lets you duplicate collection_ids as long as the media profile is different" do @@ -100,8 +100,8 @@ defmodule Pinchflat.MediaSourceTest do source_1_attrs = Map.merge(valid_attrs, %{media_profile_id: media_profile_fixture().id}) source_2_attrs = Map.merge(valid_attrs, %{media_profile_id: media_profile_fixture().id}) - assert {:ok, %Source{}} = MediaSource.create_source(source_1_attrs) - assert {:ok, %Source{}} = MediaSource.create_source(source_2_attrs) + assert {:ok, %Source{}} = Sources.create_source(source_1_attrs) + assert {:ok, %Source{}} = Sources.create_source(source_2_attrs) end test "creation will schedule the indexing task" do @@ -113,7 +113,7 @@ defmodule Pinchflat.MediaSourceTest do collection_type: "channel" } - assert {:ok, %Source{} = source} = MediaSource.create_source(valid_attrs) + assert {:ok, %Source{} = source} = Sources.create_source(valid_attrs) assert_enqueued(worker: MediaIndexingWorker, args: %{"id" => source.id}) end @@ -124,7 +124,7 @@ defmodule Pinchflat.MediaSourceTest do source = source_fixture() update_attrs = %{collection_name: "some updated name"} - assert {:ok, %Source{} = source} = MediaSource.update_source(source, update_attrs) + assert {:ok, %Source{} = source} = Sources.update_source(source, update_attrs) assert source.collection_name == "some updated name" end @@ -134,7 +134,7 @@ defmodule Pinchflat.MediaSourceTest do source = source_fixture() update_attrs = %{original_url: "https://www.youtube.com/channel/abc123"} - assert {:ok, %Source{} = source} = MediaSource.update_source(source, update_attrs) + assert {:ok, %Source{} = source} = Sources.update_source(source, update_attrs) assert source.collection_name == "some channel name" assert String.starts_with?(source.collection_id, "some_channel_id_") end @@ -145,7 +145,7 @@ defmodule Pinchflat.MediaSourceTest do source = source_fixture(collection_type: "playlist") update_attrs = %{original_url: "https://www.youtube.com/playlist?list=abc123"} - assert {:ok, %Source{} = source} = MediaSource.update_source(source, update_attrs) + assert {:ok, %Source{} = source} = Sources.update_source(source, update_attrs) assert source.collection_name == "some playlist name" assert String.starts_with?(source.collection_id, "some_playlist_id_") end @@ -156,14 +156,14 @@ defmodule Pinchflat.MediaSourceTest do source = source_fixture() update_attrs = %{name: "some updated name"} - assert {:ok, %Source{}} = MediaSource.update_source(source, update_attrs) + assert {:ok, %Source{}} = Sources.update_source(source, update_attrs) end test "updating the index frequency will re-schedule the indexing task" do source = source_fixture() update_attrs = %{index_frequency_minutes: 123} - assert {:ok, %Source{} = source} = MediaSource.update_source(source, update_attrs) + assert {:ok, %Source{} = source} = Sources.update_source(source, update_attrs) assert source.index_frequency_minutes == 123 assert_enqueued(worker: MediaIndexingWorker, args: %{"id" => source.id}) end @@ -172,7 +172,7 @@ defmodule Pinchflat.MediaSourceTest do source = source_fixture() update_attrs = %{name: "some updated name"} - assert {:ok, %Source{}} = MediaSource.update_source(source, update_attrs) + assert {:ok, %Source{}} = Sources.update_source(source, update_attrs) refute_enqueued(worker: MediaIndexingWorker, args: %{"id" => source.id}) end @@ -182,7 +182,7 @@ defmodule Pinchflat.MediaSourceTest do update_attrs = %{download_media: true} refute_enqueued(worker: VideoDownloadWorker) - assert {:ok, %Source{}} = MediaSource.update_source(source, update_attrs) + assert {:ok, %Source{}} = Sources.update_source(source, update_attrs) assert_enqueued(worker: VideoDownloadWorker, args: %{"id" => media_item.id}) end @@ -193,7 +193,7 @@ defmodule Pinchflat.MediaSourceTest do SourceTasks.enqueue_pending_media_tasks(source) assert_enqueued(worker: VideoDownloadWorker, args: %{"id" => media_item.id}) - assert {:ok, %Source{}} = MediaSource.update_source(source, update_attrs) + assert {:ok, %Source{}} = Sources.update_source(source, update_attrs) refute_enqueued(worker: VideoDownloadWorker) end @@ -201,29 +201,29 @@ defmodule Pinchflat.MediaSourceTest do source = source_fixture() assert {:error, %Ecto.Changeset{}} = - MediaSource.update_source(source, @invalid_source_attrs) + Sources.update_source(source, @invalid_source_attrs) - assert source == MediaSource.get_source!(source.id) + assert source == Sources.get_source!(source.id) end end describe "delete_source/1" do test "it deletes the source" do source = source_fixture() - assert {:ok, %Source{}} = MediaSource.delete_source(source) - assert_raise Ecto.NoResultsError, fn -> MediaSource.get_source!(source.id) end + assert {:ok, %Source{}} = Sources.delete_source(source) + assert_raise Ecto.NoResultsError, fn -> Sources.get_source!(source.id) end end test "it returns a source changeset" do source = source_fixture() - assert %Ecto.Changeset{} = MediaSource.change_source(source) + assert %Ecto.Changeset{} = Sources.change_source(source) end test "deletion also deletes all associated tasks" do source = source_fixture() task = task_fixture(source_id: source.id) - assert {:ok, %Source{}} = MediaSource.delete_source(source) + assert {:ok, %Source{}} = Sources.delete_source(source) assert_raise Ecto.NoResultsError, fn -> Repo.reload!(task) end end end @@ -232,7 +232,7 @@ defmodule Pinchflat.MediaSourceTest do test "it returns a changeset" do source = source_fixture() - assert %Ecto.Changeset{} = MediaSource.change_source(source) + assert %Ecto.Changeset{} = Sources.change_source(source) end end @@ -241,13 +241,13 @@ defmodule Pinchflat.MediaSourceTest do stub(YtDlpRunnerMock, :run, &runner_function_mock/3) source = source_fixture() - assert %Ecto.Changeset{} = MediaSource.change_source_from_url(source, %{}) + assert %Ecto.Changeset{} = Sources.change_source_from_url(source, %{}) end test "it does not fetch source details if the original_url isn't in the changeset" do expect(YtDlpRunnerMock, :run, 0, &runner_function_mock/3) - changeset = MediaSource.change_source_from_url(%Source{}, %{name: "some updated name"}) + changeset = Sources.change_source_from_url(%Source{}, %{name: "some updated name"}) assert %Ecto.Changeset{} = changeset end @@ -256,7 +256,7 @@ defmodule Pinchflat.MediaSourceTest do expect(YtDlpRunnerMock, :run, &runner_function_mock/3) changeset = - MediaSource.change_source_from_url(%Source{}, %{ + Sources.change_source_from_url(%Source{}, %{ original_url: "https://www.youtube.com/channel/abc123" }) @@ -270,7 +270,7 @@ defmodule Pinchflat.MediaSourceTest do media_profile_id = media_profile.id changeset = - MediaSource.change_source_from_url(%Source{collection_type: :channel}, %{ + Sources.change_source_from_url(%Source{collection_type: :channel}, %{ original_url: "https://www.youtube.com/channel/abc123", media_profile_id: media_profile.id }) @@ -291,7 +291,7 @@ defmodule Pinchflat.MediaSourceTest do end) changeset = - MediaSource.change_source_from_url(%Source{}, %{ + Sources.change_source_from_url(%Source{}, %{ original_url: "https://www.youtube.com/channel/abc123" }) diff --git a/test/pinchflat/tasks/source_tasks_test.exs b/test/pinchflat/tasks/source_tasks_test.exs index c2499ec..35cc7e0 100644 --- a/test/pinchflat/tasks/source_tasks_test.exs +++ b/test/pinchflat/tasks/source_tasks_test.exs @@ -4,7 +4,7 @@ defmodule Pinchflat.Tasks.SourceTasksTest do import Mox import Pinchflat.TasksFixtures import Pinchflat.MediaFixtures - import Pinchflat.MediaSourceFixtures + import Pinchflat.SourcesFixtures alias Pinchflat.Tasks alias Pinchflat.Tasks.Task diff --git a/test/pinchflat/tasks_test.exs b/test/pinchflat/tasks_test.exs index d89c5b0..7d3495e 100644 --- a/test/pinchflat/tasks_test.exs +++ b/test/pinchflat/tasks_test.exs @@ -3,7 +3,7 @@ defmodule Pinchflat.TasksTest do import Pinchflat.JobFixtures import Pinchflat.TasksFixtures import Pinchflat.MediaFixtures - import Pinchflat.MediaSourceFixtures + import Pinchflat.SourcesFixtures alias Pinchflat.Tasks alias Pinchflat.Tasks.Task diff --git a/test/pinchflat/workers/media_indexing_worker_test.exs b/test/pinchflat/workers/media_indexing_worker_test.exs index 4659cb6..176fa56 100644 --- a/test/pinchflat/workers/media_indexing_worker_test.exs +++ b/test/pinchflat/workers/media_indexing_worker_test.exs @@ -3,7 +3,7 @@ defmodule Pinchflat.Workers.MediaIndexingWorkerTest do import Mox import Pinchflat.MediaFixtures - import Pinchflat.MediaSourceFixtures + import Pinchflat.SourcesFixtures alias Pinchflat.Tasks alias Pinchflat.Workers.MediaIndexingWorker diff --git a/test/pinchflat/workers/video_download_worker_test.exs b/test/pinchflat/workers/video_download_worker_test.exs index b74ba41..376b14b 100644 --- a/test/pinchflat/workers/video_download_worker_test.exs +++ b/test/pinchflat/workers/video_download_worker_test.exs @@ -4,7 +4,7 @@ defmodule Pinchflat.Workers.VideoDownloadWorkerTest do import Mox import Pinchflat.MediaFixtures - alias Pinchflat.MediaSource + alias Pinchflat.Sources alias Pinchflat.Workers.VideoDownloadWorker setup :verify_on_exit! @@ -60,7 +60,7 @@ defmodule Pinchflat.Workers.VideoDownloadWorkerTest do test "it does not download if the source is set to not download", %{media_item: media_item} do expect(YtDlpRunnerMock, :run, 0, fn _url, _opts, _ot -> :ok end) - MediaSource.update_source(media_item.source, %{download_media: false}) + Sources.update_source(media_item.source, %{download_media: false}) perform_job(VideoDownloadWorker, %{id: media_item.id}) end diff --git a/test/pinchflat_web/controllers/page_controller_test.exs b/test/pinchflat_web/controllers/page_controller_test.exs index bd8d23d..572e07d 100644 --- a/test/pinchflat_web/controllers/page_controller_test.exs +++ b/test/pinchflat_web/controllers/page_controller_test.exs @@ -2,7 +2,7 @@ defmodule PinchflatWeb.PageControllerTest do use PinchflatWeb.ConnCase import Pinchflat.ProfilesFixtures - import Pinchflat.MediaSourceFixtures + import Pinchflat.SourcesFixtures describe "GET / when testing onboarding" do test "sets the onboarding session to true when onboarding", %{conn: conn} do diff --git a/test/pinchflat_web/controllers/source_controller_test.exs b/test/pinchflat_web/controllers/source_controller_test.exs index 872bee3..b521055 100644 --- a/test/pinchflat_web/controllers/source_controller_test.exs +++ b/test/pinchflat_web/controllers/source_controller_test.exs @@ -3,7 +3,7 @@ defmodule PinchflatWeb.SourceControllerTest do import Mox import Pinchflat.ProfilesFixtures - import Pinchflat.MediaSourceFixtures + import Pinchflat.SourcesFixtures setup do media_profile = media_profile_fixture() diff --git a/test/support/fixtures/media_fixtures.ex b/test/support/fixtures/media_fixtures.ex index f998824..c2e6e82 100644 --- a/test/support/fixtures/media_fixtures.ex +++ b/test/support/fixtures/media_fixtures.ex @@ -4,7 +4,7 @@ defmodule Pinchflat.MediaFixtures do entities via the `Pinchflat.Media` context. """ - alias Pinchflat.MediaSourceFixtures + alias Pinchflat.SourcesFixtures @doc """ Generate a media_item. @@ -18,7 +18,7 @@ defmodule Pinchflat.MediaFixtures do original_url: "https://www.youtube.com/channel/#{Faker.String.base64(12)}", livestream: false, media_filepath: "/video/#{Faker.File.file_name(:video)}", - source_id: MediaSourceFixtures.source_fixture().id + source_id: SourcesFixtures.source_fixture().id }) |> Pinchflat.Media.create_media_item() diff --git a/test/support/fixtures/media_source_fixtures.ex b/test/support/fixtures/sources_fixtures.ex similarity index 91% rename from test/support/fixtures/media_source_fixtures.ex rename to test/support/fixtures/sources_fixtures.ex index 7784c54..2a8d8ad 100644 --- a/test/support/fixtures/media_source_fixtures.ex +++ b/test/support/fixtures/sources_fixtures.ex @@ -1,12 +1,12 @@ -defmodule Pinchflat.MediaSourceFixtures do +defmodule Pinchflat.SourcesFixtures do @moduledoc """ This module defines test helpers for creating - entities via the `Pinchflat.MediaSource` context. + entities via the `Pinchflat.Sources` context. """ alias Pinchflat.Repo alias Pinchflat.ProfilesFixtures - alias Pinchflat.MediaSource.Source + alias Pinchflat.Sources.Source @doc """ Generate a source. diff --git a/test/support/fixtures/tasks_fixtures.ex b/test/support/fixtures/tasks_fixtures.ex index 7bb1121..5adf17d 100644 --- a/test/support/fixtures/tasks_fixtures.ex +++ b/test/support/fixtures/tasks_fixtures.ex @@ -5,7 +5,7 @@ defmodule Pinchflat.TasksFixtures do """ alias Pinchflat.JobFixtures - alias Pinchflat.MediaSourceFixtures + alias Pinchflat.SourcesFixtures @doc """ Generate a task. @@ -14,7 +14,7 @@ defmodule Pinchflat.TasksFixtures do {:ok, task} = attrs |> Enum.into(%{ - source_id: MediaSourceFixtures.source_fixture().id, + source_id: SourcesFixtures.source_fixture().id, job_id: JobFixtures.job_fixture().id }) |> Pinchflat.Tasks.create_task()