Merge branch 'master' of git@github.com:jodal/mopidy

This commit is contained in:
johannes 2009-12-23 23:26:58 +01:00
commit 18eaeb0d64
3 changed files with 35 additions and 13 deletions

View File

@ -55,14 +55,14 @@ class MpdHandler(object):
@register(r'^status$') @register(r'^status$')
def _status(self): def _status(self):
# TODO # TODO
return [ return {
'volume: 0', 'volume': 0,
'repeat: 0', 'repeat': 0,
'random: 0', 'random': 0,
'single: 0', 'single': 0,
'consume: 0', 'consume': 0,
'playlist: 0', 'playlist': 0,
'playlistlength: 0', 'playlistlength': 0,
'xfade: 0', 'xfade': 0,
'state: stop', 'state': 'stop',
] }

View File

@ -26,9 +26,14 @@ class MpdSession(asynchat.async_chat):
def handle_request(self, input): def handle_request(self, input):
response = self.handler.handle_request(input) response = self.handler.handle_request(input)
if response is not None: if isinstance(response, list):
for line in response: for line in response:
self.send_response(line) self.send_response(line)
elif isinstance(response, dict):
for key, value in response.items():
self.send_response(u'%s: %s' % (key, value))
elif response is not None:
self.send_response(response)
self.send_response(u'OK') self.send_response(u'OK')
def send_response(self, output): def send_response(self, output):

View File

@ -52,4 +52,21 @@ class HandlerTest(unittest.TestCase):
def test_status(self): def test_status(self):
result = self.h._status() result = self.h._status()
self.assert_(len(result)) self.assert_('volume' in result)
self.assert_(int(result['volume']) in xrange(0, 101))
self.assert_('repeat' in result)
self.assert_(int(result['repeat']) in (0, 1))
self.assert_('random' in result)
self.assert_(int(result['random']) in (0, 1))
self.assert_('single' in result)
self.assert_(int(result['single']) in (0, 1))
self.assert_('consume' in result)
self.assert_(int(result['consume']) in (0, 1))
self.assert_('playlist' in result)
self.assert_(int(result['playlist']) in xrange(0, 2**31))
self.assert_('playlistlength' in result)
self.assert_(int(result['playlistlength']) >= 0)
self.assert_('xfade' in result)
self.assert_(int(result['xfade']) >= 0)
self.assert_('state' in result)
self.assert_(result['state'] in ('play', 'stop', 'pause'))