diff --git a/mopidy/backends/base.py b/mopidy/backends/base.py index ed8ef0ef..801523fe 100644 --- a/mopidy/backends/base.py +++ b/mopidy/backends/base.py @@ -42,6 +42,9 @@ class BaseBackend(object): def playlist_load(self, name): pass + def playlist_info(self, songpos, start, end): + return None + # Stored playlist methods def playlists_list(self): return None diff --git a/mopidy/handler.py b/mopidy/handler.py index 4705c063..03f06d45 100644 --- a/mopidy/handler.py +++ b/mopidy/handler.py @@ -174,9 +174,9 @@ class MpdHandler(object): def _playlistid(self, songid=None): pass # TODO - @register(r'^playlistinfo( ((?P\d+)|(?P\d+):(?P\d+)*))*$') + @register(r'^playlistinfo( "((?P\d+)|(?P\d+):(?P\d+)*)")*$') def _playlistinfo(self, songpos=None, start=None, end=None): - pass # TODO + return self.backend.playlist_info(songpos, start, end) @register(r'^playlistmove (?P\S+) (?P\S+) (?P\d+)$') def _playlistdelete(self, name, songid, songpos): diff --git a/tests/handlertest.py b/tests/handlertest.py index 229dc1aa..5270e65e 100644 --- a/tests/handlertest.py +++ b/tests/handlertest.py @@ -302,15 +302,15 @@ class CurrentPlaylistHandlerTest(unittest.TestCase): self.assert_(result is None) def test_playlistinfo_with_songpos(self): - result = self.h.handle_request(u'playlistinfo 5') + result = self.h.handle_request(u'playlistinfo "5"') self.assert_(result is None) def test_playlistinfo_with_open_range(self): - result = self.h.handle_request(u'playlistinfo 10:') + result = self.h.handle_request(u'playlistinfo "10:"') self.assert_(result is None) def test_playlistinfo_with_closed_range(self): - result = self.h.handle_request(u'playlistinfo 10:20') + result = self.h.handle_request(u'playlistinfo "10:20"') self.assert_(result is None) def test_playlistsearch(self):