* morituri/common/cache.py:
* morituri/rip/debug.py: * morituri/test/test_common_cache.py: Add rip debug resultcache list to list cached results.
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
2012-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
|
||||
* morituri/common/cache.py:
|
||||
* morituri/rip/debug.py:
|
||||
* morituri/test/test_common_cache.py:
|
||||
Add rip debug resultcache list to list cached results.
|
||||
|
||||
2012-12-02 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
|
||||
* morituri/common/cache.py (added):
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
|
||||
import os
|
||||
import os.path
|
||||
import glob
|
||||
import tempfile
|
||||
import shutil
|
||||
|
||||
@@ -175,3 +176,9 @@ class ResultCache(log.Loggable):
|
||||
cddbdiscid)
|
||||
|
||||
return presult
|
||||
|
||||
def getIds(self):
|
||||
paths = glob.glob(os.path.join(self._path, '*.pickle'))
|
||||
|
||||
return [os.path.splitext(os.path.basename(path))[0] for path in paths]
|
||||
|
||||
|
||||
@@ -22,7 +22,36 @@
|
||||
|
||||
from morituri.common import logcommand
|
||||
|
||||
from morituri.common import task
|
||||
from morituri.common import task, cache
|
||||
|
||||
|
||||
class RCList(logcommand.LogCommand):
|
||||
|
||||
name = "list"
|
||||
summary = "list cached results"
|
||||
|
||||
def do(self, args):
|
||||
self._cache = cache.ResultCache()
|
||||
results = []
|
||||
|
||||
for i in self._cache.getIds():
|
||||
r = self._cache.getRipResult(i)
|
||||
results.append((r.object.artist, r.object.title, i))
|
||||
|
||||
results.sort()
|
||||
|
||||
for artist, title, cddbid in results:
|
||||
self.stdout.write('%s: %s - %s\n' % (
|
||||
cddbid, artist, title))
|
||||
|
||||
|
||||
|
||||
class ResultCache(logcommand.LogCommand):
|
||||
|
||||
summary = "debug result cache"
|
||||
aliases = ['rc', ]
|
||||
|
||||
subCommandClasses = [RCList, ]
|
||||
|
||||
|
||||
class Checksum(logcommand.LogCommand):
|
||||
@@ -117,4 +146,4 @@ class Debug(logcommand.LogCommand):
|
||||
|
||||
summary = "debug internals"
|
||||
|
||||
subCommandClasses = [Checksum, Encode, MusicBrainzNGS]
|
||||
subCommandClasses = [Checksum, Encode, MusicBrainzNGS, ResultCache]
|
||||
|
||||
@@ -14,6 +14,10 @@ class ResultCacheTestCase(tcommon.TestCase):
|
||||
self.cache = cache.ResultCache(
|
||||
os.path.join(os.path.dirname(__file__), 'cache', 'result'))
|
||||
|
||||
def testGet(self):
|
||||
def testGetResult(self):
|
||||
result = self.cache.getRipResult('fe105a11')
|
||||
self.assertEquals(result.object.title, "The Writing's on the Wall")
|
||||
|
||||
def testGetIds(self):
|
||||
ids = self.cache.getIds()
|
||||
self.assertEquals(ids, ['fe105a11'])
|
||||
|
||||
Reference in New Issue
Block a user