From 0cde7dfa93a1a7625c61e0f2e5a6c638087a71c7 Mon Sep 17 00:00:00 2001 From: Thomas Fillon Date: Mon, 24 Mar 2014 18:40:37 +0100 Subject: [PATCH] Fix both inline and documentation doctests --- doc/source/conf.py | 6 +++++- doc/source/tutorial/AnalyzerResult.rst | 2 +- doc/source/tutorial/quick_start.rst | 2 +- timeside/decoder/file.py | 1 + timeside/decoder/utils.py | 12 ++++++++---- 5 files changed, 16 insertions(+), 7 deletions(-) diff --git a/doc/source/conf.py b/doc/source/conf.py index 51eeba5..01cfd78 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -29,7 +29,11 @@ sys.path.insert(0, os.path.abspath('../../')) extensions = ['sphinx.ext.autodoc', 'sphinx.ext.coverage', 'sphinx.ext.viewcode', 'sphinx.ext.autosummary', 'sphinx.ext.doctest', 'numpydoc'] doctest_path = os.path.abspath('../../') - +doctest_global_setup = ''' +import os +# os.getcwd() -> /doc +wav_file = os.path.join(os.getcwd(),'../tests/samples/sweep.mp3') +''' autodoc_default_flags = 'show-inheritance' autoclass_content = 'both' diff --git a/doc/source/tutorial/AnalyzerResult.rst b/doc/source/tutorial/AnalyzerResult.rst index afbcd99..083c059 100644 --- a/doc/source/tutorial/AnalyzerResult.rst +++ b/doc/source/tutorial/AnalyzerResult.rst @@ -42,7 +42,7 @@ This default result has all the metadata and dataObject attribute ... id_metadata : {'description': '', 'author': '', 'uuid': '', 'version': '', 'date': '', 'id': '', 'unit': '', 'name': ''} data_object : {'value': array([], dtype=float64)} - audio_metadata : {'is_segment': None, 'uri': '', 'channels': None, 'start': 0, 'channelsManagement': '', 'duration': None} + audio_metadata : {'sha1': '', 'is_segment': None, 'uri': '', 'channels': None, 'start': 0, 'channelsManagement': '', 'duration': None} frame_metadata : {'blocksize': None, 'samplerate': None, 'stepsize': None} parameters : {} diff --git a/doc/source/tutorial/quick_start.rst b/doc/source/tutorial/quick_start.rst index bb52627..723dd40 100644 --- a/doc/source/tutorial/quick_start.rst +++ b/doc/source/tutorial/quick_start.rst @@ -59,4 +59,4 @@ analysis and encoding: >>> encoders = timeside.encoder.Mp3Encoder('sweep.mp3') | timeside.encoder.FlacEncoder('sweep.flac') >>> (decoder | levels | encoders).run() >>> print levels.results - {'level.max': GlobalValueResult(id_metadata=IdMetadata(id='level.max', name='Level Analyzer Max', unit='dBFS', description='', date='...', version='...', author='TimeSide', uuid='...'), data_object=DataObject(value=array([-6.021])), audio_metadata=AudioMetadata(uri='file://...sweep.wav', start=0.0, duration=8.0, is_segment=, sha1='...', False, channels=None, channelsManagement=''), parameters={}), 'level.rms': GlobalValueResult(id_metadata=IdMetadata(id='level.rms', name='Level Analyzer RMS', unit='dBFS', description='', date='...', version='...', author='TimeSide', uuid='...'), data_object=DataObject(value=array([-9.856])), audio_metadata=AudioMetadata(uri='file://...sweep.wav', start=0.0, duration=8.0, is_segment=False, channels=None, channelsManagement=''), parameters={})} + {'level.max': GlobalValueResult(id_metadata=IdMetadata(id='level.max', name='Level Max', unit='dBFS', description='', date='...', version='...', author='TimeSide', uuid='...'), data_object=DataObject(value=array([-6.021])), audio_metadata=AudioMetadata(uri='file://...sweep.wav', start=0.0, duration=8.0, is_segment=False, sha1='...', channels=2, channelsManagement=''), parameters={}), 'level.rms': GlobalValueResult(id_metadata=IdMetadata(id='level.rms', name='Level RMS', unit='dBFS', description='', date='...', version='...', author='TimeSide', uuid='...'), data_object=DataObject(value=array([-9.856])), audio_metadata=AudioMetadata(uri='file://...sweep.wav', start=0.0, duration=8.0, is_segment=False, sha1='...', channels=2, channelsManagement=''), parameters={})} diff --git a/timeside/decoder/file.py b/timeside/decoder/file.py index 3397227..87baf67 100644 --- a/timeside/decoder/file.py +++ b/timeside/decoder/file.py @@ -82,6 +82,7 @@ class FileDecoder(Decoder): self.last_buffer = None if self.from_stack: + self._frames_iterator = iter(self.process_pipe.frames_stack) return if self.stack: diff --git a/timeside/decoder/utils.py b/timeside/decoder/utils.py index cb8c418..ca801a5 100644 --- a/timeside/decoder/utils.py +++ b/timeside/decoder/utils.py @@ -154,10 +154,14 @@ def stack(process_func): @functools.wraps(process_func) def wrapper(decoder): # Processing - frames, eod = process_func(decoder) - if decoder.stack: - decoder.process_pipe.frames_stack.append((frames, eod)) - return frames, eod + if not decoder.from_stack: + frames, eod = process_func(decoder) + if decoder.stack: + decoder.process_pipe.frames_stack.append((frames, eod)) + return frames, eod + else: + return decoder._frames_iterator.next() + return wrapper -- 2.39.5