diff --git a/mopidy/mpd/handler.py b/mopidy/mpd/handler.py index bd3cb312..493bf42c 100644 --- a/mopidy/mpd/handler.py +++ b/mopidy/mpd/handler.py @@ -791,11 +791,10 @@ class MpdHandler(object): Sets random state to ``STATE``, ``STATE`` should be 0 or 1. """ - state = int(state) - if state: - raise MpdNotImplemented # TODO + if int(state): + self.backend.playback.random = True else: - raise MpdNotImplemented # TODO + self.backend.playback.random = False @handle_pattern(r'^repeat "(?P[01])"$') def _playback_repeat(self, state): diff --git a/tests/mpd/handlertest.py b/tests/mpd/handlertest.py index 64064d7d..1326f826 100644 --- a/tests/mpd/handlertest.py +++ b/tests/mpd/handlertest.py @@ -321,11 +321,13 @@ class PlaybackOptionsHandlerTest(unittest.TestCase): def test_random_off(self): result = self.h.handle_request(u'random "0"') - self.assert_(u'ACK Not implemented' in result) + self.assertFalse(self.b.playback.random) + self.assert_(u'OK' in result) def test_random_on(self): result = self.h.handle_request(u'random "1"') - self.assert_(u'ACK Not implemented' in result) + self.assertTrue(self.b.playback.random) + self.assert_(u'OK' in result) def test_repeat_off(self): result = self.h.handle_request(u'repeat "0"')