From 7201f2cb103f7c4f95cecd73025fd45e4610e428 Mon Sep 17 00:00:00 2001 From: Thomas Adamcik Date: Fri, 4 Sep 2015 15:34:40 +0200 Subject: [PATCH] tests: Make dummy backend use real playback provider if audio is passed in This is needed in order to make audio events propagate, to core and trigger async state changes in tests. --- tests/dummy_backend.py | 5 ++++- tests/mpd/protocol/__init__.py | 6 ++++-- tests/mpd/protocol/test_regression.py | 1 + 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/tests/dummy_backend.py b/tests/dummy_backend.py index 9ce8e38f..465aeab6 100644 --- a/tests/dummy_backend.py +++ b/tests/dummy_backend.py @@ -22,7 +22,10 @@ class DummyBackend(pykka.ThreadingActor, backend.Backend): super(DummyBackend, self).__init__() self.library = DummyLibraryProvider(backend=self) - self.playback = DummyPlaybackProvider(audio=audio, backend=self) + if audio: + self.playback = backend.PlaybackProvider(audio=audio, backend=self) + else: + self.playback = DummyPlaybackProvider(audio=audio, backend=self) self.playlists = DummyPlaylistsProvider(backend=self) self.uri_schemes = ['dummy'] diff --git a/tests/mpd/protocol/__init__.py b/tests/mpd/protocol/__init__.py index 754b4418..f34ad4f0 100644 --- a/tests/mpd/protocol/__init__.py +++ b/tests/mpd/protocol/__init__.py @@ -10,7 +10,7 @@ from mopidy import core from mopidy.internal import deprecation from mopidy.mpd import session, uri_mapper -from tests import dummy_backend, dummy_mixer +from tests import dummy_audio, dummy_backend, dummy_mixer class MockConnection(mock.Mock): @@ -44,11 +44,13 @@ class BaseTestCase(unittest.TestCase): self.mixer = dummy_mixer.create_proxy() else: self.mixer = None - self.backend = dummy_backend.create_proxy() + self.audio = dummy_audio.create_proxy() + self.backend = dummy_backend.create_proxy(audio=self.audio) with deprecation.ignore(): self.core = core.Core.start( self.get_config(), + audio=self.audio, mixer=self.mixer, backends=[self.backend]).proxy() diff --git a/tests/mpd/protocol/test_regression.py b/tests/mpd/protocol/test_regression.py index 565b369e..1688d064 100644 --- a/tests/mpd/protocol/test_regression.py +++ b/tests/mpd/protocol/test_regression.py @@ -31,6 +31,7 @@ class IssueGH17RegressionTest(protocol.BaseTestCase): Track(uri='dummy:e'), Track(uri='dummy:f'), ] + self.audio.trigger_fake_playback_failure('dummy:error') self.backend.library.dummy_library = tracks self.core.tracklist.add(uris=[t.uri for t in tracks]).get()