audio: Tell dummy_audio what urls to fail on
This commit is contained in:
parent
d8ce171b9a
commit
d8986e6cc1
@ -59,7 +59,7 @@ class BaseTest(unittest.TestCase):
|
||||
def tearDown(self): # noqa
|
||||
pykka.ActorRegistry.stop_all()
|
||||
|
||||
def possibly_trigger_fake_playback_error(self):
|
||||
def possibly_trigger_fake_playback_error(self, uri):
|
||||
pass
|
||||
|
||||
def possibly_trigger_fake_about_to_finish(self):
|
||||
@ -69,8 +69,8 @@ class BaseTest(unittest.TestCase):
|
||||
class DummyMixin(object):
|
||||
audio_class = dummy_audio.DummyAudio
|
||||
|
||||
def possibly_trigger_fake_playback_error(self):
|
||||
self.audio.trigger_fake_playback_failure()
|
||||
def possibly_trigger_fake_playback_error(self, uri):
|
||||
self.audio.trigger_fake_playback_failure(uri)
|
||||
|
||||
def possibly_trigger_fake_about_to_finish(self):
|
||||
callback = self.audio.get_about_to_finish_callback().get()
|
||||
@ -86,7 +86,7 @@ class AudioTest(BaseTest):
|
||||
self.assertTrue(self.audio.start_playback().get())
|
||||
|
||||
def test_start_playback_non_existing_file(self):
|
||||
self.possibly_trigger_fake_playback_error()
|
||||
self.possibly_trigger_fake_playback_error(self.uris[0] + 'bogus')
|
||||
|
||||
self.audio.prepare_change()
|
||||
self.audio.set_uri(self.uris[0] + 'bogus')
|
||||
|
||||
@ -24,9 +24,9 @@ class DummyAudio(pykka.ThreadingActor):
|
||||
self._position = 0
|
||||
self._callback = None
|
||||
self._uri = None
|
||||
self._state_change_result = True
|
||||
self._stream_changed = False
|
||||
self._tags = {}
|
||||
self._bad_uris = set()
|
||||
|
||||
def set_uri(self, uri):
|
||||
assert self._uri is None, 'prepare change not called before set'
|
||||
@ -110,10 +110,10 @@ class DummyAudio(pykka.ThreadingActor):
|
||||
self._tags['audio-codec'] = [u'fake info...']
|
||||
audio.AudioListener.send('tags_changed', tags=['audio-codec'])
|
||||
|
||||
return self._state_change_result
|
||||
return self._uri not in self._bad_uris
|
||||
|
||||
def trigger_fake_playback_failure(self):
|
||||
self._state_change_result = False
|
||||
def trigger_fake_playback_failure(self, uri):
|
||||
self._bad_uris.add(uri)
|
||||
|
||||
def trigger_fake_tags_changed(self, tags):
|
||||
self._tags.update(tags)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user