deflake, remove morituri hack, more error handling

This commit is contained in:
Samantha Baldwin
2017-09-04 21:55:05 -04:00
parent 007dc0729e
commit 83729ef7f3
10 changed files with 27 additions and 30 deletions

View File

@@ -34,6 +34,7 @@ logger = logging.getLogger(__name__)
_CACHE_DIR = join(directory.cache_path(), 'accurip')
class _AccurateRipResponse(object):
"""
An AccurateRip response contains a collection of metadata identifying a
@@ -144,6 +145,7 @@ def _download_entry(path):
return None
return resp.content
def _save_entry(raw_entry, path):
logger.debug('saving AccurateRip entry to %s', path)
# XXX: os.makedirs(exist_ok=True) in py3
@@ -155,6 +157,7 @@ def _save_entry(raw_entry, path):
return
open(path, 'wb').write(raw_entry)
def get_db_entry(path):
"""
Retrieve cached AccurateRip disc entry as array of _AccurateRipResponses.
@@ -184,6 +187,7 @@ def _assign_checksums_and_confidences(tracks, checksums, responses):
key=lambda t: t[0]
)
def _match_responses(tracks, responses):
"""
Match and save track accuraterip response checksums against
@@ -203,13 +207,14 @@ def _match_responses(tracks, responses):
'track %d matched response %s in AccurateRip'
' database: %s crc %s confidence %s' %
(i, r.cddbDiscId, v, track.AR[v]['DBCRC'],
track.AR[v]['DBConfidence'])
track.AR[v]['DBConfidence'])
)
return any((
all([t.AR['v1']['DBCRC'] for t in tracks]),
all([t.AR['v2']['DBCRC'] for t in tracks])
))
def verify_result(result, responses, checksums):
"""
Verify track AccurateRip checksums against database responses.

View File

@@ -24,8 +24,6 @@ import wave
from whipper.extern.task import task as etask
from whipper.program.arc import accuraterip_checksum
import logging
logger = logging.getLogger(__name__)

View File

@@ -613,10 +613,9 @@ class Program:
common.FRAMES_PER_SECOND)
for i, track in enumerate(self.result.tracks):
path = track.filename
writeFile(track.filename,
(self.result.table.getTrackLength(i + 1) /
common.FRAMES_PER_SECOND))
(self.result.table.getTrackLength(i + 1) /
common.FRAMES_PER_SECOND))
def writeCue(self, discName):
assert self.result.table.canCue()