From ad6e8503ed298de069ce82c34715f96a77c8f65e Mon Sep 17 00:00:00 2001 From: Claudio Ortolina Date: Tue, 29 Apr 2025 21:05:02 +0100 Subject: [PATCH] Add tests around data consistency bg jobs for artist info --- test/music_library/records_test.exs | 24 ++++++++++++++++++++++++ test/support/data_case.ex | 2 ++ 2 files changed, 26 insertions(+) diff --git a/test/music_library/records_test.exs b/test/music_library/records_test.exs index 2b4ea600..8b193278 100644 --- a/test/music_library/records_test.exs +++ b/test/music_library/records_test.exs @@ -44,6 +44,30 @@ defmodule MusicLibrary.RecordsTest do assert record.cover_hash == "599407DDF69907D4A60FE13CCAA824D25CF08DC124FD6AA3E8E7ECD98C885FFE" end + + test "it queues a task to retrieve artist info data" do + record = + record(musicbrainz_data: release_group(:lockdown_trilogy)) + + [artist] = record.artists + + assert_enqueued worker: MusicLibrary.Worker.FetchArtistInfo, + args: %{id: artist.musicbrainz_id} + end + end + + describe "delete_record/1" do + test "it queues a task to delete artist info data" do + record = + record(musicbrainz_data: release_group(:lockdown_trilogy)) + + [artist] = record.artists + + Records.delete_record(record) + + assert_enqueued worker: MusicLibrary.Worker.PruneArtistInfo, + args: %{id: artist.musicbrainz_id} + end end describe "refresh_musicbrainz_data/1" do diff --git a/test/support/data_case.ex b/test/support/data_case.ex index 9dcfa719..dfe7e594 100644 --- a/test/support/data_case.ex +++ b/test/support/data_case.ex @@ -20,6 +20,8 @@ defmodule MusicLibrary.DataCase do using do quote do + use Oban.Testing, repo: MusicLibrary.BackgroundRepo + alias MusicLibrary.Repo import Ecto