def testReleaseGroupFull(self): f = os.path.join(RELEASEGROUP_DIR, 'The_Cure_1.xml') md = MbXmlParser().parse(f) releaseGroup = md.getReleaseGroup() self.failIf(releaseGroup is None) releases = releaseGroup.getReleases() self.failIf(releases is None) self.assertEquals(len(releases), 4) # Check releases, which are in no particular order. expectedIds = [ 'd984e1a3-7281-46bb-ad8b-1478a00f2fbf', 'c100a398-3132-48a8-a5fc-c3e908ac17dc', '24bec892-b21d-47d8-a288-dc6450152574', '61a4ec51-fa34-4757-85d7-83231776ed14'] actualIds = [release.id[-36:] for release in releases] for expectedId in expectedIds: self.assert_(expectedId in actualIds) # Check artist self.assertEquals(releaseGroup.getArtist().getName(), 'The Cure') self.assertEquals(releaseGroup.getArtist().id[-36:], '69ee3720-a7cb-4402-b48d-a02c366f2bcf')
def testReleaseGroupBasic(self): f = os.path.join(RELEASEGROUP_DIR, 'The_Cure_1.xml') md = MbXmlParser().parse(f) releaseGroup = md.getReleaseGroup() self.failIf(releaseGroup is None) self.assertEquals(releaseGroup.getId(), makeId('c6a62b78-70f7-44f7-b159-064f6b7ba03a')) self.assertEquals(releaseGroup.getTitle(), 'The Cure') self.assertEquals(releaseGroup.getType(), NS_MMD_1 + 'Album')
def testEmptyType(self): f = os.path.join(RELEASEGROUP_DIR, 'The_Cure_1.xml') md1 = MbXmlParser().parse(f) releaseGroup1 = md1.getReleaseGroup() releaseGroup1.setType(None) # Serialize. outbuffer = StringIO() MbXmlWriter().write(outbuffer, md1) inbuffer = StringIO(outbuffer.getvalue().encode('utf-8')) md2 = MbXmlParser().parse(inbuffer) # Check releaseGroup2 = md2.getReleaseGroup() self.failIf(releaseGroup2 is None) self.assertEquals(releaseGroup2.getType(), None)
def testSerialize(self): # Get initial. f = os.path.join(RELEASEGROUP_DIR, 'The_Cure_1.xml') md1 = MbXmlParser().parse(f) # Serialize. outbuffer = StringIO() MbXmlWriter().write(outbuffer, md1) # Deserialize. inbuffer = StringIO(outbuffer.getvalue().encode('utf-8')) md2 = MbXmlParser().parse(inbuffer) # Check releaseGroup = md2.getReleaseGroup() self.failIf(releaseGroup is None) self.assertEquals(len(releaseGroup.getReleases()), 4) self.assertEquals(releaseGroup.getId(), makeId('c6a62b78-70f7-44f7-b159-064f6b7ba03a')) self.assertEquals(releaseGroup.getTitle(), 'The Cure') self.assertEquals(releaseGroup.getType(), NS_MMD_1 + 'Album')