mirror of
https://github.com/fergalmoran/picard.git
synced 2025-12-29 04:37:39 +00:00
PICARD-2233: Composer "credited as" must not overwrite composersort
If "credited as" is set on a composer relationship, the credited name gets used both for composer and composersort. This is inconsistent with how target credits get used for artist / artistsort and causes a composersort tag without proper sort name.
This commit is contained in:
@@ -216,6 +216,37 @@ class RecordingTest(MBJSONTest):
|
||||
self.assertEqual(m['performer:acoustic guitar'], 'Ed Sheeran')
|
||||
|
||||
|
||||
class RecordingComposerCreditsTest(MBJSONTest):
|
||||
|
||||
filename = 'recording_composer.json'
|
||||
|
||||
def test_standardize_artists(self):
|
||||
m = Metadata()
|
||||
t = Track('1')
|
||||
config.setting['translate_artist_names'] = False
|
||||
config.setting['standardize_artists'] = True
|
||||
recording_to_metadata(self.json_doc, m, t)
|
||||
self.assertEqual(m['composer'], 'Пётр Ильич Чайковский')
|
||||
self.assertEqual(m['composersort'], 'Tchaikovsky, Pyotr Ilyich')
|
||||
|
||||
def test_use_credited_as(self):
|
||||
m = Metadata()
|
||||
t = Track('1')
|
||||
config.setting['translate_artist_names'] = False
|
||||
config.setting['standardize_artists'] = False
|
||||
recording_to_metadata(self.json_doc, m, t)
|
||||
self.assertEqual(m['composer'], 'Tchaikovsky')
|
||||
self.assertEqual(m['composersort'], 'Tchaikovsky, Pyotr Ilyich')
|
||||
|
||||
def test_translate(self):
|
||||
m = Metadata()
|
||||
t = Track('1')
|
||||
config.setting['translate_artist_names'] = True
|
||||
recording_to_metadata(self.json_doc, m, t)
|
||||
self.assertEqual(m['composer'], 'Pyotr Ilyich Tchaikovsky')
|
||||
self.assertEqual(m['composersort'], 'Tchaikovsky, Pyotr Ilyich')
|
||||
|
||||
|
||||
class RecordingInstrumentalTest(MBJSONTest):
|
||||
|
||||
filename = 'recording_instrumental.json'
|
||||
|
||||
Reference in New Issue
Block a user