Merge pull request #398 from whipper-team/bugfix/issue-396-no-mb-release-group-type
Make whipper not break on missing release type
This commit is contained in:
@@ -29,7 +29,7 @@ Example disc id: KnpGsLhvH.lPrNc1PBL21lb9Bg4-"""
|
||||
print('- Release %d:' % (i + 1, ))
|
||||
print(' Artist: %s' % md.artist.encode('utf-8'))
|
||||
print(' Title: %s' % md.title.encode('utf-8'))
|
||||
print(' Type: %s' % md.releaseType.encode('utf-8')) # noqa: E501
|
||||
print(' Type: %s' % unicode(md.releaseType).encode('utf-8')) # noqa: E501
|
||||
print(' URL: %s' % md.url)
|
||||
print(' Tracks: %d' % len(md.tracks))
|
||||
if md.catalogNumber:
|
||||
|
||||
@@ -182,7 +182,8 @@ def _getMetadata(release, discid, country=None):
|
||||
|
||||
discMD = DiscMetadata()
|
||||
|
||||
discMD.releaseType = release['release-group']['type']
|
||||
if 'type' in release['release-group']:
|
||||
discMD.releaseType = release['release-group']['type']
|
||||
discCredit = _Credit(release['artist-credit'])
|
||||
|
||||
# FIXME: is there a better way to check for VA ?
|
||||
|
||||
30
whipper/test/test_command_mblookup.py
Normal file
30
whipper/test/test_command_mblookup.py
Normal file
@@ -0,0 +1,30 @@
|
||||
# vi:si:et:sw=4:sts=4:ts=4:set fileencoding=utf-8
|
||||
u"""Tests for whipper.command.mblookup"""
|
||||
|
||||
import os
|
||||
import pickle
|
||||
import unittest
|
||||
|
||||
from whipper.command import mblookup
|
||||
|
||||
|
||||
class MBLookupTestCase(unittest.TestCase):
|
||||
u"""Test cases for whipper.command.mblookup.MBLookup"""
|
||||
|
||||
@staticmethod
|
||||
def _mock_musicbrainz(discid, country=None, record=False):
|
||||
u"""Mock function for whipper.common.mbngs.musicbrainz function."""
|
||||
filename = u"whipper.discid.{}.pickle".format(discid)
|
||||
path = os.path.join(os.path.dirname(__file__), filename)
|
||||
with open(path) as p:
|
||||
return pickle.load(p)
|
||||
|
||||
def testMissingReleaseType(self):
|
||||
u"""Test that lookup for release without a type set doesn't fail."""
|
||||
# Using: Gustafsson, Österberg & Cowle - What's Up? 8 (disc 4)
|
||||
# https://musicbrainz.org/release/d8e6153a-2c47-4804-9d73-0aac1081c3b1
|
||||
mblookup.musicbrainz = self._mock_musicbrainz
|
||||
discid = u"xu338_M8WukSRi0J.KTlDoflB8Y-"
|
||||
# https://musicbrainz.org/cdtoc/xu338_M8WukSRi0J.KTlDoflB8Y-
|
||||
lookup = mblookup.MBLookup([discid], u'whipper mblookup', None)
|
||||
lookup.do()
|
||||
@@ -1,5 +1,5 @@
|
||||
# -*- Mode: Python; test-case-name: whipper.test.test_common_mbngs -*-
|
||||
# vi:si:et:sw=4:sts=4:ts=4
|
||||
# vi:si:et:sw=4:sts=4:ts=4:set fileencoding=utf-8
|
||||
|
||||
import os
|
||||
import json
|
||||
@@ -207,6 +207,20 @@ class MetadataTestCase(unittest.TestCase):
|
||||
self.assertEqual(track2.mbidRecording,
|
||||
u'5f19758e-7421-4c71-a599-9a9575d8e1b0')
|
||||
|
||||
def testMissingReleaseGroupType(self):
|
||||
"""Check that whipper doesn't break if there's no type."""
|
||||
# Using: Gustafsson, Österberg & Cowle - What's Up? 8 (disc 4)
|
||||
# https://musicbrainz.org/release/d8e6153a-2c47-4804-9d73-0aac1081c3b1
|
||||
filename = 'whipper.release.d8e6153a-2c47-4804-9d73-0aac1081c3b1.json'
|
||||
path = os.path.join(os.path.dirname(__file__), filename)
|
||||
handle = open(path, "rb")
|
||||
response = json.loads(handle.read())
|
||||
handle.close()
|
||||
discid = "xu338_M8WukSRi0J.KTlDoflB8Y-" # disc 4
|
||||
|
||||
metadata = mbngs._getMetadata(response['release'], discid)
|
||||
self.assertEqual(metadata.releaseType, None)
|
||||
|
||||
def testAllAvailableMetadata(self):
|
||||
"""Check that all possible metadata gets assigned."""
|
||||
# Using: David Rovics - The Other Side
|
||||
|
||||
538
whipper/test/whipper.discid.xu338_M8WukSRi0J.KTlDoflB8Y-.pickle
Normal file
538
whipper/test/whipper.discid.xu338_M8WukSRi0J.KTlDoflB8Y-.pickle
Normal file
@@ -0,0 +1,538 @@
|
||||
(lp0
|
||||
ccopy_reg
|
||||
_reconstructor
|
||||
p1
|
||||
(cwhipper.common.mbngs
|
||||
DiscMetadata
|
||||
p2
|
||||
c__builtin__
|
||||
object
|
||||
p3
|
||||
Ntp4
|
||||
Rp5
|
||||
(dp6
|
||||
S'sortName'
|
||||
p7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p8
|
||||
sS'artist'
|
||||
p9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p10
|
||||
sS'url'
|
||||
p11
|
||||
S'https://musicbrainz.org/release/d8e6153a-2c47-4804-9d73-0aac1081c3b1'
|
||||
p12
|
||||
sS'barcode'
|
||||
p13
|
||||
S'9789162267957'
|
||||
p14
|
||||
sS'tracks'
|
||||
p15
|
||||
(lp16
|
||||
g1
|
||||
(cwhipper.common.mbngs
|
||||
TrackMetadata
|
||||
p17
|
||||
g3
|
||||
Ntp18
|
||||
Rp19
|
||||
(dp20
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p21
|
||||
sS'mbidRecording'
|
||||
p22
|
||||
S'2ed20192-08ae-4852-a05a-b59b9c27f8c0'
|
||||
p23
|
||||
sS'title'
|
||||
p24
|
||||
S'Best friends (sid. 96)'
|
||||
p25
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p26
|
||||
sS'mbidWorks'
|
||||
p27
|
||||
(lp28
|
||||
sS'mbid'
|
||||
p29
|
||||
S'f9f6ae81-7d3b-475f-bb66-1dbd09705ca2'
|
||||
p30
|
||||
sS'duration'
|
||||
p31
|
||||
I86666
|
||||
sS'mbidArtist'
|
||||
p32
|
||||
(lp33
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p34
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p35
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p36
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp37
|
||||
Rp38
|
||||
(dp39
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p40
|
||||
sg22
|
||||
S'314126fa-75a4-4e1c-9bae-4b00253a47e3'
|
||||
p41
|
||||
sg24
|
||||
S'Best friends (sid. 97)'
|
||||
p42
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p43
|
||||
sg27
|
||||
(lp44
|
||||
sg29
|
||||
S'e41896d4-5ab9-41b4-861a-8021370885ce'
|
||||
p45
|
||||
sg31
|
||||
I139800
|
||||
sg32
|
||||
(lp46
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p47
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p48
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p49
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp50
|
||||
Rp51
|
||||
(dp52
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p53
|
||||
sg22
|
||||
S'81a572b6-fc21-4f47-b63c-ff42c5b2aa50'
|
||||
p54
|
||||
sg24
|
||||
VWorking life (sid. 98\u201399)
|
||||
p55
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p56
|
||||
sg27
|
||||
(lp57
|
||||
sg29
|
||||
S'a58c92f9-84ef-492e-be75-a2482ff5b0cd'
|
||||
p58
|
||||
sg31
|
||||
I171293
|
||||
sg32
|
||||
(lp59
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p60
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p61
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p62
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp63
|
||||
Rp64
|
||||
(dp65
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p66
|
||||
sg22
|
||||
S'03497930-6681-47a2-b8ba-98b04a51682f'
|
||||
p67
|
||||
sg24
|
||||
S'Pioneers in sport (sid. 100)'
|
||||
p68
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p69
|
||||
sg27
|
||||
(lp70
|
||||
sg29
|
||||
S'7701ef4a-2682-4183-990f-2724a7445bb6'
|
||||
p71
|
||||
sg31
|
||||
I97813
|
||||
sg32
|
||||
(lp72
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p73
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p74
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p75
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp76
|
||||
Rp77
|
||||
(dp78
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p79
|
||||
sg22
|
||||
S'a0bb30e0-87a8-4598-82ee-ef47ce46b9c5'
|
||||
p80
|
||||
sg24
|
||||
S'Pioneers in sport (sid. 101)'
|
||||
p81
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p82
|
||||
sg27
|
||||
(lp83
|
||||
sg29
|
||||
S'f5c49a53-71d3-487c-96dc-108fcd3a5243'
|
||||
p84
|
||||
sg31
|
||||
I93546
|
||||
sg32
|
||||
(lp85
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p86
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p87
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p88
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp89
|
||||
Rp90
|
||||
(dp91
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p92
|
||||
sg22
|
||||
S'54ef6217-6954-4b42-9c1b-8b30d11f4204'
|
||||
p93
|
||||
sg24
|
||||
S'Weird, but true! (sid. 102)'
|
||||
p94
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p95
|
||||
sg27
|
||||
(lp96
|
||||
sg29
|
||||
S'def7ea86-07d2-41c0-9ae8-562377484188'
|
||||
p97
|
||||
sg31
|
||||
I124186
|
||||
sg32
|
||||
(lp98
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p99
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p100
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p101
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp102
|
||||
Rp103
|
||||
(dp104
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p105
|
||||
sg22
|
||||
S'e9d8e7bc-8d8e-4d0f-87b0-429066b3bb1a'
|
||||
p106
|
||||
sg24
|
||||
S'Weird, but true! (sid. 103)'
|
||||
p107
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p108
|
||||
sg27
|
||||
(lp109
|
||||
sg29
|
||||
S'a7c5c2f8-a9fc-4ebd-8fd4-dc6d200ff794'
|
||||
p110
|
||||
sg31
|
||||
I98000
|
||||
sg32
|
||||
(lp111
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p112
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p113
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p114
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp115
|
||||
Rp116
|
||||
(dp117
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p118
|
||||
sg22
|
||||
S'c330f9eb-f63d-4f1d-b858-73c3912f5100'
|
||||
p119
|
||||
sg24
|
||||
S'Useful inventions (sid. 104)'
|
||||
p120
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p121
|
||||
sg27
|
||||
(lp122
|
||||
sg29
|
||||
S'2c9b71c1-7987-4e01-9d3d-d9eae9ea7d04'
|
||||
p123
|
||||
sg31
|
||||
I111933
|
||||
sg32
|
||||
(lp124
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p125
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p126
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p127
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp128
|
||||
Rp129
|
||||
(dp130
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p131
|
||||
sg22
|
||||
S'2fd621a4-575f-4ad3-8beb-4f435f81714e'
|
||||
p132
|
||||
sg24
|
||||
S'Useful inventions (sid. 105)'
|
||||
p133
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p134
|
||||
sg27
|
||||
(lp135
|
||||
sg29
|
||||
S'09f7c0fe-165f-4e3d-8eab-0379e3330191'
|
||||
p136
|
||||
sg31
|
||||
I111186
|
||||
sg32
|
||||
(lp137
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p138
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p139
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p140
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp141
|
||||
Rp142
|
||||
(dp143
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p144
|
||||
sg22
|
||||
S'85300031-cf37-4fee-aac5-2dd4f3302d5d'
|
||||
p145
|
||||
sg24
|
||||
S'Friends or not friends'
|
||||
p146
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p147
|
||||
sg27
|
||||
(lp148
|
||||
sg29
|
||||
S'80fc7cd1-576d-4e97-b20d-7af146209771'
|
||||
p149
|
||||
sg31
|
||||
I252000
|
||||
sg32
|
||||
(lp150
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p151
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p152
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p153
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp154
|
||||
Rp155
|
||||
(dp156
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p157
|
||||
sg22
|
||||
S'56510ac8-444c-48f4-8b35-86ba3d79a93f'
|
||||
p158
|
||||
sg24
|
||||
S'People at work'
|
||||
p159
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p160
|
||||
sg27
|
||||
(lp161
|
||||
sg29
|
||||
S'47dc69cf-dfe4-4084-a22e-62bfd0cbfc11'
|
||||
p162
|
||||
sg31
|
||||
I137520
|
||||
sg32
|
||||
(lp163
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p164
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p165
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p166
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp167
|
||||
Rp168
|
||||
(dp169
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p170
|
||||
sg22
|
||||
S'51bd9b54-4145-4ab0-8334-ba7bf40160b0'
|
||||
p171
|
||||
sg24
|
||||
S'Sports'
|
||||
p172
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p173
|
||||
sg27
|
||||
(lp174
|
||||
sg29
|
||||
S'e30daeed-c043-4140-bdf1-182baf9eab16'
|
||||
p175
|
||||
sg31
|
||||
I192213
|
||||
sg32
|
||||
(lp176
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p177
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p178
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p179
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp180
|
||||
Rp181
|
||||
(dp182
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p183
|
||||
sg22
|
||||
S'ebc81f6c-9c8e-498a-b622-dc27f450a89a'
|
||||
p184
|
||||
sg24
|
||||
S'Stories to tell'
|
||||
p185
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p186
|
||||
sg27
|
||||
(lp187
|
||||
sg29
|
||||
S'c7e2f93a-7f68-4a1f-9458-a4399803a1b6'
|
||||
p188
|
||||
sg31
|
||||
I209640
|
||||
sg32
|
||||
(lp189
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p190
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p191
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p192
|
||||
asbag1
|
||||
(g17
|
||||
g3
|
||||
Ntp193
|
||||
Rp194
|
||||
(dp195
|
||||
g7
|
||||
VGustafsson, J<>rgen, <20>sterberg, Eva & Cowle, Andy
|
||||
p196
|
||||
sg22
|
||||
S'e36f3f9d-6bf6-44db-938b-64372b772da5'
|
||||
p197
|
||||
sg24
|
||||
S'Inventions'
|
||||
p198
|
||||
sg9
|
||||
VJ<EFBFBD>rgen Gustafsson, Eva <20>sterberg & Andy Cowle
|
||||
p199
|
||||
sg27
|
||||
(lp200
|
||||
sg29
|
||||
S'9871987a-ab2c-4a2f-b4e0-61dafb058540'
|
||||
p201
|
||||
sg31
|
||||
I141186
|
||||
sg32
|
||||
(lp202
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p203
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p204
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p205
|
||||
asbasg31
|
||||
I1966982
|
||||
sg29
|
||||
S'd8e6153a-2c47-4804-9d73-0aac1081c3b1'
|
||||
p206
|
||||
sS'various'
|
||||
p207
|
||||
I00
|
||||
sS'catalogNumber'
|
||||
p208
|
||||
S'6795-7'
|
||||
p209
|
||||
sS'release'
|
||||
p210
|
||||
S'2008'
|
||||
p211
|
||||
sg24
|
||||
VWhat\u2019s Up? 8 (Disc 4 of 4)
|
||||
p212
|
||||
sg32
|
||||
(lp213
|
||||
S'0508d601-375d-419e-b581-8d5f0b43e573'
|
||||
p214
|
||||
aS'56309f78-8e31-4362-b875-5bdd4ac2b81f'
|
||||
p215
|
||||
aS'591599ca-8598-4407-8aa8-bbe7aedd9d24'
|
||||
p216
|
||||
asS'mbidReleaseGroup'
|
||||
p217
|
||||
S'6aa93fc6-6389-414d-a3ed-7ece36bc4931'
|
||||
p218
|
||||
sS'releaseTitle'
|
||||
p219
|
||||
VWhat\u2019s Up? 8
|
||||
p220
|
||||
sba.
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user