mirror of
https://github.com/beetbox/beets.git
synced 2025-12-06 08:39:17 +01:00
musicbrainz: synchronise plugin import path
This commit is contained in:
parent
4fc9f0c3d6
commit
bef0bcbaa6
2 changed files with 80 additions and 68 deletions
|
|
@ -16,9 +16,9 @@
|
|||
|
||||
from collections.abc import Sequence
|
||||
|
||||
from beets.autotag.mb import VARIOUS_ARTISTS_ID
|
||||
from beets.test.helper import PluginTestCase
|
||||
from beetsplug.albumtypes import AlbumTypesPlugin
|
||||
from beetsplug.musicbrainz import VARIOUS_ARTISTS_ID
|
||||
|
||||
|
||||
class AlbumTypesPluginTest(PluginTestCase):
|
||||
|
|
|
|||
|
|
@ -21,7 +21,13 @@ from beets.test.helper import BeetsTestCase
|
|||
from beetsplug import musicbrainz
|
||||
|
||||
|
||||
class MBAlbumInfoTest(BeetsTestCase):
|
||||
class MusicBrainzTestCase(BeetsTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
self.mb = musicbrainz.MusicBrainzPlugin()
|
||||
|
||||
|
||||
class MBAlbumInfoTest(MusicBrainzTestCase):
|
||||
def _make_release(
|
||||
self,
|
||||
date_str="2009",
|
||||
|
|
@ -210,7 +216,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
|
||||
def test_parse_release_with_year(self):
|
||||
release = self._make_release("1984")
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.album == "ALBUM TITLE"
|
||||
assert d.album_id == "ALBUM ID"
|
||||
assert d.artist == "ARTIST NAME"
|
||||
|
|
@ -221,12 +227,12 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
|
||||
def test_parse_release_type(self):
|
||||
release = self._make_release("1984")
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.albumtype == "album"
|
||||
|
||||
def test_parse_release_full_date(self):
|
||||
release = self._make_release("1987-03-31")
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.original_year == 1987
|
||||
assert d.original_month == 3
|
||||
assert d.original_day == 31
|
||||
|
|
@ -238,7 +244,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
]
|
||||
release = self._make_release(tracks=tracks)
|
||||
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
t = d.tracks
|
||||
assert len(t) == 2
|
||||
assert t[0].title == "TITLE ONE"
|
||||
|
|
@ -255,7 +261,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
]
|
||||
release = self._make_release(tracks=tracks)
|
||||
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
t = d.tracks
|
||||
assert t[0].medium_index == 1
|
||||
assert t[0].index == 1
|
||||
|
|
@ -269,7 +275,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
]
|
||||
release = self._make_release(tracks=tracks)
|
||||
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.mediums == 1
|
||||
t = d.tracks
|
||||
assert t[0].medium == 1
|
||||
|
|
@ -296,7 +302,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
}
|
||||
)
|
||||
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.mediums == 2
|
||||
t = d.tracks
|
||||
assert t[0].medium == 1
|
||||
|
|
@ -308,79 +314,81 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
|
||||
def test_parse_release_year_month_only(self):
|
||||
release = self._make_release("1987-03")
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.original_year == 1987
|
||||
assert d.original_month == 3
|
||||
|
||||
def test_no_durations(self):
|
||||
tracks = [self._make_track("TITLE", "ID", None)]
|
||||
release = self._make_release(tracks=tracks)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.tracks[0].length is None
|
||||
|
||||
def test_track_length_overrides_recording_length(self):
|
||||
tracks = [self._make_track("TITLE", "ID", 1.0 * 1000.0)]
|
||||
release = self._make_release(tracks=tracks, track_length=2.0 * 1000.0)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.tracks[0].length == 2.0
|
||||
|
||||
def test_no_release_date(self):
|
||||
release = self._make_release(None)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert not d.original_year
|
||||
assert not d.original_month
|
||||
assert not d.original_day
|
||||
|
||||
def test_various_artists_defaults_false(self):
|
||||
release = self._make_release(None)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert not d.va
|
||||
|
||||
def test_detect_various_artists(self):
|
||||
release = self._make_release(None)
|
||||
release["artist-credit"][0]["artist"]["id"] = mb.VARIOUS_ARTISTS_ID
|
||||
d = mb.album_info(release)
|
||||
release["artist-credit"][0]["artist"]["id"] = (
|
||||
musicbrainz.VARIOUS_ARTISTS_ID
|
||||
)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.va
|
||||
|
||||
def test_parse_artist_sort_name(self):
|
||||
release = self._make_release(None)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.artist_sort == "ARTIST SORT NAME"
|
||||
|
||||
def test_parse_releasegroupid(self):
|
||||
release = self._make_release(None)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.releasegroup_id == "RELEASE GROUP ID"
|
||||
|
||||
def test_parse_asin(self):
|
||||
release = self._make_release(None)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.asin == "ALBUM ASIN"
|
||||
|
||||
def test_parse_catalognum(self):
|
||||
release = self._make_release(None)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.catalognum == "CATALOG NUMBER"
|
||||
|
||||
def test_parse_textrepr(self):
|
||||
release = self._make_release(None)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.script == "SCRIPT"
|
||||
assert d.language == "LANGUAGE"
|
||||
|
||||
def test_parse_country(self):
|
||||
release = self._make_release(None)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.country == "COUNTRY"
|
||||
|
||||
def test_parse_status(self):
|
||||
release = self._make_release(None)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.albumstatus == "STATUS"
|
||||
|
||||
def test_parse_barcode(self):
|
||||
release = self._make_release(None)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.barcode == "BARCODE"
|
||||
|
||||
def test_parse_media(self):
|
||||
|
|
@ -389,12 +397,12 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
self._make_track("TITLE TWO", "ID TWO", 200.0 * 1000.0),
|
||||
]
|
||||
release = self._make_release(None, tracks=tracks)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.media == "FORMAT"
|
||||
|
||||
def test_parse_disambig(self):
|
||||
release = self._make_release(None)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.albumdisambig == "R_DISAMBIGUATION"
|
||||
assert d.releasegroupdisambig == "RG_DISAMBIGUATION"
|
||||
|
||||
|
|
@ -404,7 +412,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
self._make_track("TITLE TWO", "ID TWO", 200.0 * 1000.0),
|
||||
]
|
||||
release = self._make_release(None, tracks=tracks)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
t = d.tracks
|
||||
assert t[0].disctitle == "MEDIUM TITLE"
|
||||
assert t[1].disctitle == "MEDIUM TITLE"
|
||||
|
|
@ -412,13 +420,13 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
def test_missing_language(self):
|
||||
release = self._make_release(None)
|
||||
del release["text-representation"]["language"]
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.language is None
|
||||
|
||||
def test_parse_recording_artist(self):
|
||||
tracks = [self._make_track("a", "b", 1, True)]
|
||||
release = self._make_release(None, tracks=tracks)
|
||||
track = mb.album_info(release).tracks[0]
|
||||
track = self.mb.album_info(release).tracks[0]
|
||||
assert track.artist == "RECORDING ARTIST NAME"
|
||||
assert track.artist_id == "RECORDING ARTIST ID"
|
||||
assert track.artist_sort == "RECORDING ARTIST SORT NAME"
|
||||
|
|
@ -427,7 +435,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
def test_parse_recording_artist_multi(self):
|
||||
tracks = [self._make_track("a", "b", 1, True, multi_artist_credit=True)]
|
||||
release = self._make_release(None, tracks=tracks)
|
||||
track = mb.album_info(release).tracks[0]
|
||||
track = self.mb.album_info(release).tracks[0]
|
||||
assert track.artist == "RECORDING ARTIST NAME & RECORDING ARTIST 2 NAME"
|
||||
assert track.artist_id == "RECORDING ARTIST ID"
|
||||
assert (
|
||||
|
|
@ -459,7 +467,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
def test_track_artist_overrides_recording_artist(self):
|
||||
tracks = [self._make_track("a", "b", 1, True)]
|
||||
release = self._make_release(None, tracks=tracks, track_artist=True)
|
||||
track = mb.album_info(release).tracks[0]
|
||||
track = self.mb.album_info(release).tracks[0]
|
||||
assert track.artist == "TRACK ARTIST NAME"
|
||||
assert track.artist_id == "TRACK ARTIST ID"
|
||||
assert track.artist_sort == "TRACK ARTIST SORT NAME"
|
||||
|
|
@ -470,7 +478,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
release = self._make_release(
|
||||
None, tracks=tracks, track_artist=True, multi_artist_credit=True
|
||||
)
|
||||
track = mb.album_info(release).tracks[0]
|
||||
track = self.mb.album_info(release).tracks[0]
|
||||
assert track.artist == "TRACK ARTIST NAME & TRACK ARTIST 2 NAME"
|
||||
assert track.artist_id == "TRACK ARTIST ID"
|
||||
assert (
|
||||
|
|
@ -495,12 +503,12 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
def test_parse_recording_remixer(self):
|
||||
tracks = [self._make_track("a", "b", 1, remixer=True)]
|
||||
release = self._make_release(None, tracks=tracks)
|
||||
track = mb.album_info(release).tracks[0]
|
||||
track = self.mb.album_info(release).tracks[0]
|
||||
assert track.remixer == "RECORDING REMIXER ARTIST NAME"
|
||||
|
||||
def test_data_source(self):
|
||||
release = self._make_release()
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert d.data_source == "MusicBrainz"
|
||||
|
||||
def test_ignored_media(self):
|
||||
|
|
@ -510,7 +518,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
self._make_track("TITLE TWO", "ID TWO", 200.0 * 1000.0),
|
||||
]
|
||||
release = self._make_release(tracks=tracks, medium_format="IGNORED1")
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert len(d.tracks) == 0
|
||||
|
||||
def test_no_ignored_media(self):
|
||||
|
|
@ -520,7 +528,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
self._make_track("TITLE TWO", "ID TWO", 200.0 * 1000.0),
|
||||
]
|
||||
release = self._make_release(tracks=tracks, medium_format="NON-IGNORED")
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert len(d.tracks) == 2
|
||||
|
||||
def test_skip_data_track(self):
|
||||
|
|
@ -530,7 +538,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
self._make_track("TITLE TWO", "ID TWO", 200.0 * 1000.0),
|
||||
]
|
||||
release = self._make_release(tracks=tracks)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert len(d.tracks) == 2
|
||||
assert d.tracks[0].title == "TITLE ONE"
|
||||
assert d.tracks[1].title == "TITLE TWO"
|
||||
|
|
@ -546,7 +554,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
)
|
||||
]
|
||||
release = self._make_release(tracks=tracks, data_tracks=data_tracks)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert len(d.tracks) == 2
|
||||
assert d.tracks[0].title == "TITLE ONE"
|
||||
assert d.tracks[1].title == "TITLE TWO"
|
||||
|
|
@ -563,7 +571,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
)
|
||||
]
|
||||
release = self._make_release(tracks=tracks, data_tracks=data_tracks)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert len(d.tracks) == 3
|
||||
assert d.tracks[0].title == "TITLE ONE"
|
||||
assert d.tracks[1].title == "TITLE TWO"
|
||||
|
|
@ -578,7 +586,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
self._make_track("TITLE TWO", "ID TWO", 200.0 * 1000.0),
|
||||
]
|
||||
release = self._make_release(tracks=tracks)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert len(d.tracks) == 2
|
||||
assert d.tracks[0].title == "TITLE ONE"
|
||||
assert d.tracks[1].title == "TITLE TWO"
|
||||
|
|
@ -594,7 +602,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
)
|
||||
]
|
||||
release = self._make_release(tracks=tracks, data_tracks=data_tracks)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert len(d.tracks) == 2
|
||||
assert d.tracks[0].title == "TITLE ONE"
|
||||
assert d.tracks[1].title == "TITLE TWO"
|
||||
|
|
@ -610,7 +618,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
self._make_track("TITLE TWO", "ID TWO", 200.0 * 1000.0),
|
||||
]
|
||||
release = self._make_release(tracks=tracks)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert len(d.tracks) == 3
|
||||
assert d.tracks[0].title == "TITLE ONE"
|
||||
assert d.tracks[1].title == "TITLE VIDEO"
|
||||
|
|
@ -629,7 +637,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
)
|
||||
]
|
||||
release = self._make_release(tracks=tracks, data_tracks=data_tracks)
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
assert len(d.tracks) == 3
|
||||
assert d.tracks[0].title == "TITLE ONE"
|
||||
assert d.tracks[1].title == "TITLE TWO"
|
||||
|
|
@ -647,7 +655,7 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
]
|
||||
release = self._make_release(tracks=tracks)
|
||||
|
||||
d = mb.album_info(release)
|
||||
d = self.mb.album_info(release)
|
||||
t = d.tracks
|
||||
assert len(t) == 2
|
||||
assert t[0].trackdisambig is None
|
||||
|
|
@ -657,18 +665,18 @@ class MBAlbumInfoTest(BeetsTestCase):
|
|||
class ParseIDTest(BeetsTestCase):
|
||||
def test_parse_id_correct(self):
|
||||
id_string = "28e32c71-1450-463e-92bf-e0a46446fc11"
|
||||
out = mb._parse_id(id_string)
|
||||
out = musicbrainz._parse_id(id_string)
|
||||
assert out == id_string
|
||||
|
||||
def test_parse_id_non_id_returns_none(self):
|
||||
id_string = "blah blah"
|
||||
out = mb._parse_id(id_string)
|
||||
out = musicbrainz._parse_id(id_string)
|
||||
assert out is None
|
||||
|
||||
def test_parse_id_url_finds_id(self):
|
||||
id_string = "28e32c71-1450-463e-92bf-e0a46446fc11"
|
||||
id_url = "https://musicbrainz.org/entity/%s" % id_string
|
||||
out = mb._parse_id(id_url)
|
||||
out = musicbrainz._parse_id(id_url)
|
||||
assert out == id_string
|
||||
|
||||
|
||||
|
|
@ -696,24 +704,28 @@ class ArtistFlatteningTest(BeetsTestCase):
|
|||
|
||||
def test_single_artist(self):
|
||||
credit = [self._credit_dict()]
|
||||
a, s, c = mb._flatten_artist_credit(credit)
|
||||
a, s, c = musicbrainz._flatten_artist_credit(credit)
|
||||
assert a == "NAME"
|
||||
assert s == "SORT"
|
||||
assert c == "CREDIT"
|
||||
|
||||
a, s, c = mb._multi_artist_credit(credit, include_join_phrase=False)
|
||||
a, s, c = musicbrainz._multi_artist_credit(
|
||||
credit, include_join_phrase=False
|
||||
)
|
||||
assert a == ["NAME"]
|
||||
assert s == ["SORT"]
|
||||
assert c == ["CREDIT"]
|
||||
|
||||
def test_two_artists(self):
|
||||
credit = [self._credit_dict("a"), " AND ", self._credit_dict("b")]
|
||||
a, s, c = mb._flatten_artist_credit(credit)
|
||||
a, s, c = musicbrainz._flatten_artist_credit(credit)
|
||||
assert a == "NAMEa AND NAMEb"
|
||||
assert s == "SORTa AND SORTb"
|
||||
assert c == "CREDITa AND CREDITb"
|
||||
|
||||
a, s, c = mb._multi_artist_credit(credit, include_join_phrase=False)
|
||||
a, s, c = musicbrainz._multi_artist_credit(
|
||||
credit, include_join_phrase=False
|
||||
)
|
||||
assert a == ["NAMEa", "NAMEb"]
|
||||
assert s == ["SORTa", "SORTb"]
|
||||
assert c == ["CREDITa", "CREDITb"]
|
||||
|
|
@ -730,36 +742,36 @@ class ArtistFlatteningTest(BeetsTestCase):
|
|||
|
||||
# test no alias
|
||||
config["import"]["languages"] = [""]
|
||||
flat = mb._flatten_artist_credit([credit_dict])
|
||||
flat = musicbrainz._flatten_artist_credit([credit_dict])
|
||||
assert flat == ("NAME", "SORT", "CREDIT")
|
||||
|
||||
# test en primary
|
||||
config["import"]["languages"] = ["en"]
|
||||
flat = mb._flatten_artist_credit([credit_dict])
|
||||
flat = musicbrainz._flatten_artist_credit([credit_dict])
|
||||
assert flat == ("ALIASen", "ALIASSORTen", "CREDIT")
|
||||
|
||||
# test en_GB en primary
|
||||
config["import"]["languages"] = ["en_GB", "en"]
|
||||
flat = mb._flatten_artist_credit([credit_dict])
|
||||
flat = musicbrainz._flatten_artist_credit([credit_dict])
|
||||
assert flat == ("ALIASen_GB", "ALIASSORTen_GB", "CREDIT")
|
||||
|
||||
# test en en_GB primary
|
||||
config["import"]["languages"] = ["en", "en_GB"]
|
||||
flat = mb._flatten_artist_credit([credit_dict])
|
||||
flat = musicbrainz._flatten_artist_credit([credit_dict])
|
||||
assert flat == ("ALIASen", "ALIASSORTen", "CREDIT")
|
||||
|
||||
# test fr primary
|
||||
config["import"]["languages"] = ["fr"]
|
||||
flat = mb._flatten_artist_credit([credit_dict])
|
||||
flat = musicbrainz._flatten_artist_credit([credit_dict])
|
||||
assert flat == ("ALIASfr_P", "ALIASSORTfr_P", "CREDIT")
|
||||
|
||||
# test for not matching non-primary
|
||||
config["import"]["languages"] = ["pt_BR", "fr"]
|
||||
flat = mb._flatten_artist_credit([credit_dict])
|
||||
flat = musicbrainz._flatten_artist_credit([credit_dict])
|
||||
assert flat == ("ALIASfr_P", "ALIASSORTfr_P", "CREDIT")
|
||||
|
||||
|
||||
class MBLibraryTest(BeetsTestCase):
|
||||
class MBLibraryTest(MusicBrainzTestCase):
|
||||
def test_match_track(self):
|
||||
with mock.patch("musicbrainzngs.search_recordings") as p:
|
||||
p.return_value = {
|
||||
|
|
@ -771,13 +783,13 @@ class MBLibraryTest(BeetsTestCase):
|
|||
}
|
||||
],
|
||||
}
|
||||
ti = list(mb.match_track("hello", "there"))[0]
|
||||
ti = list(self.mb.item_candidates(None, "hello", "there"))[0]
|
||||
|
||||
p.assert_called_with(artist="hello", recording="there", limit=5)
|
||||
assert ti.title == "foo"
|
||||
assert ti.track_id == "bar"
|
||||
|
||||
def test_match_album(self):
|
||||
def test_candidates(self):
|
||||
mbid = "d2a6f856-b553-40a0-ac54-a321e8e2da99"
|
||||
with mock.patch("musicbrainzngs.search_releases") as sp:
|
||||
sp.return_value = {
|
||||
|
|
@ -824,7 +836,7 @@ class MBLibraryTest(BeetsTestCase):
|
|||
}
|
||||
}
|
||||
|
||||
ai = list(mb.match_album("hello", "there"))[0]
|
||||
ai = list(self.mb.candidates([], "hello", "there", False))[0]
|
||||
|
||||
sp.assert_called_with(artist="hello", release="there", limit=5)
|
||||
gp.assert_called_with(mbid, mock.ANY)
|
||||
|
|
@ -833,13 +845,13 @@ class MBLibraryTest(BeetsTestCase):
|
|||
|
||||
def test_match_track_empty(self):
|
||||
with mock.patch("musicbrainzngs.search_recordings") as p:
|
||||
til = list(mb.match_track(" ", " "))
|
||||
til = list(self.mb.item_candidates(None, " ", " "))
|
||||
assert not p.called
|
||||
assert til == []
|
||||
|
||||
def test_match_album_empty(self):
|
||||
def test_candidates_empty(self):
|
||||
with mock.patch("musicbrainzngs.search_releases") as p:
|
||||
ail = list(mb.match_album(" ", " "))
|
||||
ail = list(self.mb.candidates([], " ", " ", False))
|
||||
assert not p.called
|
||||
assert ail == []
|
||||
|
||||
|
|
@ -927,7 +939,7 @@ class MBLibraryTest(BeetsTestCase):
|
|||
|
||||
with mock.patch("musicbrainzngs.get_release_by_id") as gp:
|
||||
gp.side_effect = side_effect
|
||||
album = mb.album_for_id("d2a6f856-b553-40a0-ac54-a321e8e2da02")
|
||||
album = self.mb.album_for_id("d2a6f856-b553-40a0-ac54-a321e8e2da02")
|
||||
assert album.country == "COUNTRY"
|
||||
|
||||
def test_pseudo_releases_with_empty_links(self):
|
||||
|
|
@ -972,7 +984,7 @@ class MBLibraryTest(BeetsTestCase):
|
|||
|
||||
with mock.patch("musicbrainzngs.get_release_by_id") as gp:
|
||||
gp.side_effect = side_effect
|
||||
album = mb.album_for_id("d2a6f856-b553-40a0-ac54-a321e8e2da02")
|
||||
album = self.mb.album_for_id("d2a6f856-b553-40a0-ac54-a321e8e2da02")
|
||||
assert album.country is None
|
||||
|
||||
def test_pseudo_releases_without_links(self):
|
||||
|
|
@ -1016,7 +1028,7 @@ class MBLibraryTest(BeetsTestCase):
|
|||
|
||||
with mock.patch("musicbrainzngs.get_release_by_id") as gp:
|
||||
gp.side_effect = side_effect
|
||||
album = mb.album_for_id("d2a6f856-b553-40a0-ac54-a321e8e2da02")
|
||||
album = self.mb.album_for_id("d2a6f856-b553-40a0-ac54-a321e8e2da02")
|
||||
assert album.country is None
|
||||
|
||||
def test_pseudo_releases_with_unsupported_links(self):
|
||||
|
|
@ -1067,5 +1079,5 @@ class MBLibraryTest(BeetsTestCase):
|
|||
|
||||
with mock.patch("musicbrainzngs.get_release_by_id") as gp:
|
||||
gp.side_effect = side_effect
|
||||
album = mb.album_for_id("d2a6f856-b553-40a0-ac54-a321e8e2da02")
|
||||
album = self.mb.album_for_id("d2a6f856-b553-40a0-ac54-a321e8e2da02")
|
||||
assert album.country is None
|
||||
|
|
|
|||
Loading…
Reference in a new issue