Fix test_load_triggers_playing_of_new_playlist
This commit is contained in:
parent
827305ad00
commit
183ff30fa5
@ -39,6 +39,20 @@ class BaseCurrentPlaylistController(object):
|
||||
def load(self, playlist):
|
||||
self.playlist = playlist
|
||||
|
||||
playback = self.backend.playback
|
||||
|
||||
# FIXME introduce a mechanism for telling
|
||||
# playback that it needs to reset
|
||||
playback.playlist_position = 0
|
||||
|
||||
if playlist.tracks:
|
||||
playback.current_track = playlist.tracks[0]
|
||||
else:
|
||||
playback.current_track = None
|
||||
|
||||
if playback.state == playback.PLAYING:
|
||||
self.backend.playback.play()
|
||||
|
||||
def move(self, start, end, to_position):
|
||||
tracks = self.playlist.tracks
|
||||
|
||||
|
||||
@ -84,7 +84,22 @@ class BaseCurrentPlaylistControllerTest(object):
|
||||
self.controller.load(Playlist())
|
||||
self.assertEqual(self.controller.version, version+1)
|
||||
|
||||
def test_load_triggers_playing_of_new_playlist(self):
|
||||
@populate_playlist
|
||||
def test_load_preserves_and_updates_play_state(self):
|
||||
tracks = self.controller.playlist.tracks
|
||||
playback = self.playback
|
||||
|
||||
self.playback.play()
|
||||
self.controller.load(Playlist(tracks=[tracks[1]]))
|
||||
self.assertEqual(playback.state, playback.PLAYING)
|
||||
self.assertEqual(tracks[1], self.playback.current_track)
|
||||
|
||||
self.playback.stop()
|
||||
self.controller.load(Playlist(tracks=[tracks[2]]))
|
||||
self.assertEqual(playback.state, playback.STOPPED)
|
||||
self.assertEqual(tracks[2], self.playback.current_track)
|
||||
|
||||
def test_load_triggers_playing_of_new_playlist_if_allready_playing(self):
|
||||
raise NotImplementedError
|
||||
|
||||
@populate_playlist
|
||||
|
||||
Loading…
Reference in New Issue
Block a user