Add test_new_playlist_loaded_callback_when_* and implementation
This commit is contained in:
parent
cdc763b114
commit
084c0a8321
@ -55,16 +55,7 @@ class BaseCurrentPlaylistController(object):
|
||||
|
||||
def load(self, playlist):
|
||||
self.playlist = playlist
|
||||
|
||||
playback = self.backend.playback
|
||||
|
||||
if playlist.tracks:
|
||||
playback.current_track = playlist.tracks[0]
|
||||
else:
|
||||
playback.current_track = None
|
||||
|
||||
if playback.state == playback.PLAYING:
|
||||
self.backend.playback.play()
|
||||
self.backend.playback.new_playlist_loaded_callback()
|
||||
|
||||
def move(self, start, end, to_position):
|
||||
tracks = self.playlist.tracks
|
||||
@ -115,7 +106,12 @@ class BasePlaybackController(object):
|
||||
raise NotImplementedError
|
||||
|
||||
def new_playlist_loaded_callback(self):
|
||||
pass
|
||||
self.current_track = None
|
||||
|
||||
if self.state == self.PLAYING:
|
||||
self.play()
|
||||
elif self.state == self.PAUSED:
|
||||
self.stop()
|
||||
|
||||
def next(self):
|
||||
if not self.next_track:
|
||||
|
||||
@ -110,7 +110,7 @@ class BaseCurrentPlaylistControllerTest(object):
|
||||
|
||||
self.controller.load(Playlist(tracks=[tracks[2]]))
|
||||
self.assertEqual(playback.state, playback.STOPPED)
|
||||
self.assertEqual(tracks[2], self.playback.current_track)
|
||||
self.assertEqual(None, self.playback.current_track)
|
||||
|
||||
@populate_playlist
|
||||
def test_move_single(self):
|
||||
@ -447,6 +447,27 @@ class BasePlaybackControllerTest(object):
|
||||
|
||||
self.assert_(wrapper.called)
|
||||
|
||||
@populate_playlist
|
||||
def test_new_playlist_loaded_callback_when_playing(self):
|
||||
tracks = self.backend.current_playlist.playlist.tracks
|
||||
self.playback.play()
|
||||
self.backend.current_playlist.load(Playlist(tracks=[tracks[2]]))
|
||||
self.assertEqual(self.playback.state, self.playback.PLAYING)
|
||||
|
||||
@populate_playlist
|
||||
def test_new_playlist_loaded_callback_when_stopped(self):
|
||||
tracks = self.backend.current_playlist.playlist.tracks
|
||||
self.backend.current_playlist.load(Playlist(tracks=[tracks[2]]))
|
||||
self.assertEqual(self.playback.state, self.playback.STOPPED)
|
||||
|
||||
@populate_playlist
|
||||
def test_new_playlist_loaded_callback_when_paused(self):
|
||||
tracks = self.backend.current_playlist.playlist.tracks
|
||||
self.playback.play()
|
||||
self.playback.pause()
|
||||
self.backend.current_playlist.load(Playlist(tracks=[tracks[2]]))
|
||||
self.assertEqual(self.playback.state, self.playback.STOPPED)
|
||||
|
||||
@populate_playlist
|
||||
def test_pause_when_stopped(self):
|
||||
self.playback.pause()
|
||||
|
||||
Loading…
Reference in New Issue
Block a user