* morituri/test/kanye.cue (added):
Add a cue test with mixed mode. * morituri/image/cue.py: * morituri/test/test_image_cue.py: Handle it properly.
This commit is contained in:
@@ -1,3 +1,11 @@
|
||||
2009-04-26 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
|
||||
* morituri/test/kanye.cue (added):
|
||||
Add a cue test with mixed mode.
|
||||
* morituri/image/cue.py:
|
||||
* morituri/test/test_image_cue.py:
|
||||
Handle it properly.
|
||||
|
||||
2009-04-25 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
|
||||
* morituri/image/cue.py:
|
||||
|
||||
@@ -42,7 +42,7 @@ _FILE_RE = re.compile(r"""
|
||||
_TRACK_RE = re.compile(r"""
|
||||
^\s+TRACK # TRACK
|
||||
\s+(?P<track>\d\d) # two-digit track number
|
||||
\s+(?P<mode>\w+)$ # mode (AUDIO/...)
|
||||
\s+(?P<mode>.+)$ # mode (AUDIO, MODEx/2xxx, ...)
|
||||
""", re.VERBOSE)
|
||||
|
||||
_INDEX_RE = re.compile(r"""
|
||||
@@ -224,7 +224,8 @@ class Track:
|
||||
@type file: L{File}
|
||||
"""
|
||||
if number in self._indexes.keys():
|
||||
raise KeyError, "index %d already in track" % number
|
||||
raise KeyError, "index %d already in track %d" % (
|
||||
number, self.number)
|
||||
if number < 0 or number > 99:
|
||||
raise IndexError, "Index number must be from 0 to 99"
|
||||
|
||||
|
||||
88
morituri/test/kanye.cue
Normal file
88
morituri/test/kanye.cue
Normal file
@@ -0,0 +1,88 @@
|
||||
REM GENRE "Hip Hop"
|
||||
REM DATE 2008
|
||||
REM DISCID A90D2E0D
|
||||
REM COMMENT "ExactAudioCopy v0.99pb4"
|
||||
CATALOG 0602517931596
|
||||
PERFORMER "Kanye West"
|
||||
TITLE "808s & Heartbreak"
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - Say You Will.wav" WAVE
|
||||
TRACK 01 AUDIO
|
||||
TITLE "Say You Will"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70846386
|
||||
INDEX 01 00:00:00
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - Welcome To Heartbreak (Feat. Kid Cudi).wav" WAVE
|
||||
TRACK 02 AUDIO
|
||||
TITLE "Welcome To Heartbreak (Feat. Kid Cudi)"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70846387
|
||||
INDEX 01 00:00:00
|
||||
TRACK 03 AUDIO
|
||||
TITLE "Heartless"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70840511
|
||||
INDEX 00 04:22:70
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - Heartless.wav" WAVE
|
||||
INDEX 01 00:00:00
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - Amazing (Feat. Young Jeezy).wav" WAVE
|
||||
TRACK 04 AUDIO
|
||||
TITLE "Amazing (Feat. Young Jeezy)"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70846401
|
||||
INDEX 01 00:00:00
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - Love Lockdown.wav" WAVE
|
||||
TRACK 05 AUDIO
|
||||
TITLE "Love Lockdown"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70837229
|
||||
INDEX 01 00:00:00
|
||||
TRACK 06 AUDIO
|
||||
TITLE "Paranoid (Feat. Mr. Hudson)"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70846402
|
||||
INDEX 00 04:30:23
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - Paranoid (Feat. Mr. Hudson).wav" WAVE
|
||||
INDEX 01 00:00:00
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - RoboCop.wav" WAVE
|
||||
TRACK 07 AUDIO
|
||||
TITLE "RoboCop"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70846388
|
||||
INDEX 01 00:00:00
|
||||
TRACK 08 AUDIO
|
||||
TITLE "Street Lights"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70846403
|
||||
INDEX 00 04:34:27
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - Street Lights.wav" WAVE
|
||||
INDEX 01 00:00:00
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - Bad News.wav" WAVE
|
||||
TRACK 09 AUDIO
|
||||
TITLE "Bad News"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70846389
|
||||
INDEX 01 00:00:00
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - See You In My Nightmares (Feat. Lil Wayne).wav" WAVE
|
||||
TRACK 10 AUDIO
|
||||
TITLE "See You In My Nightmares (Feat. Lil Wayne)"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70846390
|
||||
INDEX 01 00:00:00
|
||||
TRACK 11 AUDIO
|
||||
TITLE "Coldest Winter"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70846400
|
||||
INDEX 00 04:18:09
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - Coldest Winter.wav" WAVE
|
||||
INDEX 01 00:00:00
|
||||
TRACK 12 AUDIO
|
||||
TITLE "Pinocchio Story (Freestyle Live From Singapore)"
|
||||
PERFORMER "Kanye West"
|
||||
ISRC USUM70846838
|
||||
INDEX 00 02:44:25
|
||||
FILE "Kanye West - 808s & Heartbreak\Kanye West - Pinocchio Story (Freestyle Live From Singapore).wav" WAVE
|
||||
INDEX 01 00:00:00
|
||||
TRACK 13 MODEx/2xxx
|
||||
TITLE "Data Track"
|
||||
PERFORMER "Kanye West"
|
||||
INDEX 00 06:01:45
|
||||
@@ -33,3 +33,14 @@ class KingsSeparateTestCase(unittest.TestCase):
|
||||
self.assertEquals(self.cue.getTrackLength(t), -1)
|
||||
t = self.cue.tracks[-1]
|
||||
self.assertEquals(self.cue.getTrackLength(t), -1)
|
||||
|
||||
class KanyeMixedTestCase(unittest.TestCase):
|
||||
def setUp(self):
|
||||
self.cue = cue.Cue(os.path.join(os.path.dirname(__file__),
|
||||
'kanye.cue'))
|
||||
self.cue.parse()
|
||||
self.assertEquals(len(self.cue.tracks), 13)
|
||||
|
||||
def testGetTrackLength(self):
|
||||
t = self.cue.tracks[0]
|
||||
self.assertEquals(self.cue.getTrackLength(t), -1)
|
||||
|
||||
Reference in New Issue
Block a user