core: Forward playlists_loaded() event from backends to frontends
This commit is contained in:
parent
0f6c9a1673
commit
330731a247
@ -5,14 +5,16 @@ import itertools
|
||||
import pykka
|
||||
|
||||
from mopidy.audio import AudioListener, PlaybackState
|
||||
from mopidy.backends.listener import BackendListener
|
||||
|
||||
from .library import LibraryController
|
||||
from .listener import CoreListener
|
||||
from .playback import PlaybackController
|
||||
from .playlists import PlaylistsController
|
||||
from .tracklist import TracklistController
|
||||
|
||||
|
||||
class Core(pykka.ThreadingActor, AudioListener):
|
||||
class Core(pykka.ThreadingActor, AudioListener, BackendListener):
|
||||
#: The library controller. An instance of
|
||||
# :class:`mopidy.core.LibraryController`.
|
||||
library = None
|
||||
@ -67,6 +69,10 @@ class Core(pykka.ThreadingActor, AudioListener):
|
||||
self.playback.state = new_state
|
||||
self.playback._trigger_track_playback_paused()
|
||||
|
||||
def playlists_loaded(self):
|
||||
# Forward event from backend to frontends
|
||||
CoreListener.send('playlists_loaded')
|
||||
|
||||
|
||||
class Backends(list):
|
||||
def __init__(self, backends):
|
||||
|
||||
@ -20,6 +20,11 @@ class BackendEventsTest(unittest.TestCase):
|
||||
def tearDown(self):
|
||||
pykka.ActorRegistry.stop_all()
|
||||
|
||||
def test_backends_playlists_loaded_forwards_event_to_frontends(self, send):
|
||||
send.reset_mock()
|
||||
self.core.playlists_loaded().get()
|
||||
self.assertEqual(send.call_args[0][0], 'playlists_loaded')
|
||||
|
||||
def test_pause_sends_track_playback_paused_event(self, send):
|
||||
self.core.tracklist.add(Track(uri='dummy:a'))
|
||||
self.core.playback.play().get()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user