Test that playback commands change the play state
This commit is contained in:
parent
08a095530f
commit
13f0cea299
@ -39,19 +39,19 @@ class BaseBackend(object):
|
|||||||
|
|
||||||
# Control methods
|
# Control methods
|
||||||
def pause(self):
|
def pause(self):
|
||||||
pass
|
self.state = self.PAUSE
|
||||||
|
|
||||||
def play(self, songid):
|
def play_pos(self, songpos):
|
||||||
pass
|
self.state = self.PLAY
|
||||||
|
|
||||||
def play_id(self, songid):
|
def play_id(self, songid):
|
||||||
pass
|
self.state = self.PLAY
|
||||||
|
|
||||||
def resume(self):
|
def resume(self):
|
||||||
pass
|
self.state = self.PLAY
|
||||||
|
|
||||||
def stop(self):
|
def stop(self):
|
||||||
pass
|
self.state = self.STOP
|
||||||
|
|
||||||
# Current/single playlist methods
|
# Current/single playlist methods
|
||||||
def playlist_changes_since(self, version):
|
def playlist_changes_since(self, version):
|
||||||
|
|||||||
@ -100,6 +100,11 @@ class SpotifyBackend(BaseBackend):
|
|||||||
self.state = self.PAUSE
|
self.state = self.PAUSE
|
||||||
self.spotify.pause()
|
self.spotify.pause()
|
||||||
|
|
||||||
|
def play_pos(self, songpos):
|
||||||
|
self.state = self.PLAY
|
||||||
|
track = self._current_playlist[songpos]
|
||||||
|
self.spotify.play(track)
|
||||||
|
|
||||||
def play_id(self, songid):
|
def play_id(self, songid):
|
||||||
self.state = self.PLAY
|
self.state = self.PLAY
|
||||||
track = self._current_playlist[songid]
|
track = self._current_playlist[songid]
|
||||||
|
|||||||
@ -186,7 +186,7 @@ class MpdHandler(object):
|
|||||||
|
|
||||||
@register(r'^play "(?P<songpos>\d+)"$')
|
@register(r'^play "(?P<songpos>\d+)"$')
|
||||||
def _play(self, songpos):
|
def _play(self, songpos):
|
||||||
pass # TODO
|
return self.backend.play_pos(int(songpos))
|
||||||
|
|
||||||
@register(r'^playid "(?P<songid>\d+)"$')
|
@register(r'^playid "(?P<songid>\d+)"$')
|
||||||
def _playid(self, songid):
|
def _playid(self, songid):
|
||||||
|
|||||||
@ -201,7 +201,8 @@ class PlaybackOptionsHandlerTest(unittest.TestCase):
|
|||||||
|
|
||||||
class PlaybackControlHandlerTest(unittest.TestCase):
|
class PlaybackControlHandlerTest(unittest.TestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
self.h = handler.MpdHandler(backend=DummyBackend())
|
self.b = DummyBackend()
|
||||||
|
self.h = handler.MpdHandler(backend=self.b)
|
||||||
|
|
||||||
def test_next(self):
|
def test_next(self):
|
||||||
result = self.h.handle_request(u'next')
|
result = self.h.handle_request(u'next')
|
||||||
@ -210,18 +211,22 @@ class PlaybackControlHandlerTest(unittest.TestCase):
|
|||||||
def test_pause_off(self):
|
def test_pause_off(self):
|
||||||
result = self.h.handle_request(u'pause "0"')
|
result = self.h.handle_request(u'pause "0"')
|
||||||
self.assert_(result is None)
|
self.assert_(result is None)
|
||||||
|
self.assertEquals(self.b.PLAY, self.b.state)
|
||||||
|
|
||||||
def test_pause_on(self):
|
def test_pause_on(self):
|
||||||
result = self.h.handle_request(u'pause "1"')
|
result = self.h.handle_request(u'pause "1"')
|
||||||
self.assert_(result is None)
|
self.assert_(result is None)
|
||||||
|
self.assertEquals(self.b.PAUSE, self.b.state)
|
||||||
|
|
||||||
def test_play(self):
|
def test_play(self):
|
||||||
result = self.h.handle_request(u'play "0"')
|
result = self.h.handle_request(u'play "0"')
|
||||||
self.assert_(result is None)
|
self.assert_(result is None)
|
||||||
|
self.assertEquals(self.b.PLAY, self.b.state)
|
||||||
|
|
||||||
def test_playid(self):
|
def test_playid(self):
|
||||||
result = self.h.handle_request(u'playid "0"')
|
result = self.h.handle_request(u'playid "0"')
|
||||||
self.assert_(result is None)
|
self.assert_(result is None)
|
||||||
|
self.assertEquals(self.b.PLAY, self.b.state)
|
||||||
|
|
||||||
def test_previous(self):
|
def test_previous(self):
|
||||||
result = self.h.handle_request(u'previous')
|
result = self.h.handle_request(u'previous')
|
||||||
@ -238,6 +243,7 @@ class PlaybackControlHandlerTest(unittest.TestCase):
|
|||||||
def test_stop(self):
|
def test_stop(self):
|
||||||
result = self.h.handle_request(u'stop')
|
result = self.h.handle_request(u'stop')
|
||||||
self.assert_(result is None)
|
self.assert_(result is None)
|
||||||
|
self.assertEquals(self.b.STOP, self.b.state)
|
||||||
|
|
||||||
|
|
||||||
class CurrentPlaylistHandlerTest(unittest.TestCase):
|
class CurrentPlaylistHandlerTest(unittest.TestCase):
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user