Improve coverage of media_formats_from_node() and medium_to_metadata()

- use a multi-media release (this case wasn't tested at all)
- fuse old and new tests
- drop media.json test file as it was only used there
This commit is contained in:
Laurent Monin
2023-06-02 15:26:53 +02:00
parent 2060e3bc82
commit a962f9176e
3 changed files with 215 additions and 14 deletions

View File

@@ -423,14 +423,27 @@ class NullTrackTest(MBJSONTest):
class MediaTest(MBJSONTest):
filename = 'media.json'
filename = 'release_5medias.json'
def test_track(self):
def test_media_formats_from_node_multi(self):
formats = media_formats_from_node(self.json_doc['media'])
self.assertEqual('2×CD + 2×DVD-Video + Blu-ray', formats)
def test_medium_to_metadata_0(self):
m = Metadata()
medium_to_metadata(self.json_doc, m)
medium_to_metadata(self.json_doc['media'][0], m)
self.assertEqual(m['discnumber'], '1')
self.assertEqual(m['media'], '12" Vinyl')
self.assertEqual(m['totaltracks'], '10')
self.assertEqual(m['media'], 'CD')
self.assertEqual(m['totaltracks'], '5')
self.assertEqual(m['discsubtitle'], 'The Original Album')
def test_medium_to_metadata_4(self):
m = Metadata()
medium_to_metadata(self.json_doc['media'][4], m)
self.assertEqual(m['discnumber'], '5')
self.assertEqual(m['media'], 'Blu-ray')
self.assertEqual(m['totaltracks'], '19')
self.assertEqual(m['discsubtitle'], 'High Resolution Audio and AudioVisual Material')
class MediaPregapTest(MBJSONTest):