Add empty handlers for handling of the current playlist

This commit is contained in:
Stein Magnus Jodal 2009-12-24 02:13:13 +01:00
parent 9e46ab48da
commit ec048bdd99
2 changed files with 175 additions and 3 deletions

View File

@ -35,6 +35,19 @@ class MpdHandler(object):
def register_backend(self, backend):
self.backend = backend
@register(r'^add "(?P<uri>[^"]*)"$')
def _add(self, uri):
pass # TODO
@register(r'^addid "(?P<uri>[^"]*)"( (?P<position>\d+))*$')
def _add(self, uri, position=None):
pass # TODO
return {'id': 0}
@register(r'^clear$')
def _clear(self):
pass # TODO
@register(r'^clearerror$')
def _clearerror(self):
pass # TODO
@ -56,6 +69,14 @@ class MpdHandler(object):
def _currentsong(self):
return self.backend.current_song()
@register(r'^delete ((?P<position>\d+)|(?P<start>\d+):(?P<end>\d+)*)$')
def _delete(self, position=None, start=None, end=None):
pass # TODO
@register(r'^deleteid (?P<songid>.*)$')
def _deleteid(self, songid):
pass # TODO
@register(r'^idle( (?P<subsystems>.+))*$')
def _idle(self, subsystems=None):
pass # TODO
@ -70,6 +91,14 @@ class MpdHandler(object):
return self._listplaylists()
pass # TODO
@register(r'^move ((?P<position>\d+)|(?P<start>\d+):(?P<end>\d+)*) (?P<to>\d+)$')
def _move(self, position=None, start=None, end=None, to=None):
pass # TODO
@register(r'^moveid (?P<songid>\S+) (?P<to>\d+)$')
def _moveid(self, songid, to):
pass # TODO
@register(r'^next$')
def _next(self):
pass # TODO
@ -90,14 +119,38 @@ class MpdHandler(object):
def _playid(self, songid):
pass # TODO
@register(r'^previous$')
def _previous(self):
@register(r'^playlist$')
def _playlist(self):
return self._playlistinfo()
@register(r'^playlistfind (?P<tag>\S+) (?P<needle>\S+)$')
def _playlistfind(self, tag, needle):
pass # TODO
@register(r'^playlistid( (?P<songid>\S+))*$')
def _playlistid(self, songid=None):
pass # TODO
@register(r'^playlistinfo( ((?P<position>\d+)|(?P<start>\d+):(?P<end>\d+)*))*$')
def _playlistinfo(self, position=None, start=None, end=None):
pass # TODO
@register(r'^playlistsearch (?P<tag>\S+) (?P<needle>\S+)$')
def _playlistsearch(self, tag, needle):
pass # TODO
@register(r'^plchanges (?P<version>\d+)$')
def _plchanges(self, version):
return self.backend.playlist_changes(version)
@register(r'^plchangesposid (?P<version>\d+)$')
def _plchangesposid(self, version):
pass # TODO
@register(r'^previous$')
def _previous(self):
pass # TODO
@register(r'^random (?P<state>[01])$')
def _random(self, state):
state = int(state)
@ -139,6 +192,10 @@ class MpdHandler(object):
volume = 100
pass # TODO
@register(r'^shuffle( (?P<start>\d+):(?P<end>\d+)*)*$')
def _shuffle(self, start=None, end=None):
pass # TODO
@register(r'^single (?P<state>[01])$')
def _single(self, state):
state = int(state)
@ -177,3 +234,11 @@ class MpdHandler(object):
'xfade': self.backend.status_xfade(),
'state': self.backend.status_state(),
}
@register(r'^swap (?P<position1>\d+) (?P<position2>\d+)$')
def _swap(self, position1, position2):
pass # TODO
@register(r'^swapid (?P<songid1>\S+) (?P<songid2>\S+)$')
def _swapid(self, songid1, songid2):
pass # TODO

View File

@ -231,12 +231,119 @@ class CurrentPlaylistHandlerTest(unittest.TestCase):
def setUp(self):
self.h = handler.MpdHandler()
pass # TODO
def test_add(self):
result = self.h.handle_request(u'add "file:///dev/urandom"')
self.assert_(result is None)
def test_addid_without_position(self):
result = self.h.handle_request(u'addid "file:///dev/urandom"')
self.assert_('id' in result)
def test_addid_with_position(self):
result = self.h.handle_request(u'addid "file:///dev/urandom" 0')
self.assert_('id' in result)
def test_clear(self):
result = self.h.handle_request(u'clear')
self.assert_(result is None)
def test_delete_position(self):
result = self.h.handle_request(u'delete 5')
self.assert_(result is None)
def test_delete_open_range(self):
result = self.h.handle_request(u'delete 10:')
self.assert_(result is None)
def test_delete_closed_range(self):
result = self.h.handle_request(u'delete 10:20')
self.assert_(result is None)
def test_deleteid(self):
result = self.h.handle_request(u'deleteid 0')
self.assert_(result is None)
def test_move_position(self):
result = self.h.handle_request(u'move 5 0')
self.assert_(result is None)
def test_move_open_range(self):
result = self.h.handle_request(u'move 10: 0')
self.assert_(result is None)
def test_move_closed_range(self):
result = self.h.handle_request(u'move 10:20 0')
self.assert_(result is None)
def test_moveid(self):
result = self.h.handle_request(u'moveid 0 10')
self.assert_(result is None)
def test_playlist_returns_same_as_playlistinfo(self):
playlist_result = self.h.handle_request(u'playlist')
playlistinfo_result = self.h.handle_request(u'playlistinfo')
self.assertEquals(playlist_result, playlistinfo_result)
def test_playlistfind(self):
result = self.h.handle_request(u'playlistfind tag needle')
self.assert_(result is None)
def test_playlistid_without_songid(self):
result = self.h.handle_request(u'playlistid')
self.assert_(result is None)
def test_playlistid_with_songid(self):
result = self.h.handle_request(u'playlistid 10')
self.assert_(result is None)
def test_playlistinfo_without_position_or_range(self):
result = self.h.handle_request(u'playlistinfo')
self.assert_(result is None)
def test_playlistinfo_with_position(self):
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:')
self.assert_(result is None)
def test_playlistinfo_with_closed_range(self):
result = self.h.handle_request(u'playlistinfo 10:20')
self.assert_(result is None)
def test_playlistsearch(self):
result = self.h.handle_request(u'playlistsearch tag needle')
self.assert_(result is None)
def test_plchanges(self):
result = self.h.handle_request(u'plchanges 0')
self.assert_(result is None)
def test_plchangesposid(self):
result = self.h.handle_request(u'plchangesposid 0')
self.assert_(result is None)
def test_shuffle_without_range(self):
result = self.h.handle_request(u'shuffle')
self.assert_(result is None)
def test_shuffle_with_open_range(self):
result = self.h.handle_request(u'shuffle 10:')
self.assert_(result is None)
def test_shuffle_with_closed_range(self):
result = self.h.handle_request(u'shuffle 10:20')
self.assert_(result is None)
def test_swap(self):
result = self.h.handle_request(u'swap 10 20')
self.assert_(result is None)
def test_swapid(self):
result = self.h.handle_request(u'swapid 10 20')
self.assert_(result is None)
class StoredPlaylistsHandlerTest(unittest.TestCase):
def setUp(self):