diff --git a/mopidy/backends/__init__.py b/mopidy/backends/__init__.py index 36a9e05f..359e2da5 100644 --- a/mopidy/backends/__init__.py +++ b/mopidy/backends/__init__.py @@ -120,11 +120,12 @@ class BasePlaybackController(object): @property def next_track(self): - if self.current_track is None: - return None + playlist = self.backend.current_playlist.playlist + try: - return self.backend.current_playlist.playlist.tracks[ - self.playlist_position + 1] + if self.current_track is None: + return playlist.tracks[self.playlist_position] + return playlist.tracks[self.playlist_position + 1] except IndexError: return None diff --git a/tests/backends/basetests.py b/tests/backends/basetests.py index 68004626..b35b52f7 100644 --- a/tests/backends/basetests.py +++ b/tests/backends/basetests.py @@ -252,9 +252,8 @@ class BasePlaybackControllerTest(object): @populate_playlist def test_next_track_before_play(self): - # FIXME should next_track reflect which track is about to be played? tracks = self.backend.current_playlist.playlist.tracks - self.assertEqual(self.playback.next_track, None) + self.assertEqual(self.playback.next_track, tracks[0]) @populate_playlist def test_next_track_during_play(self):