Merge branch 'master' of git@github.com:jodal/mopidy
This commit is contained in:
commit
18eaeb0d64
@ -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',
|
||||||
]
|
}
|
||||||
|
|||||||
@ -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):
|
||||||
|
|||||||
@ -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'))
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user