mopidy/tests/frontends/mpris/player_interface_test.py
2011-06-05 02:15:37 +02:00

48 lines
1.9 KiB
Python

import mock
import unittest
from pykka.registry import ActorRegistry
from mopidy.backends.base import Backend
from mopidy.backends.base.playback import PlaybackController
from mopidy.frontends import mpris
class PlayerInterfaceTest(unittest.TestCase):
def setUp(self):
mpris.ActorRegistry = mock.Mock(spec=ActorRegistry)
mpris.MprisObject._connect_to_dbus = mock.Mock()
self.backend = mock.Mock(spec=Backend)
self.mpris_object = mpris.MprisObject()
self.mpris_object._backend = self.backend
def test_playback_status_is_playing_when_playing(self):
self.backend.playback.state.get.return_value = PlaybackController.PLAYING
result = self.mpris_object.Get(mpris.PLAYER_IFACE, 'PlaybackStatus')
self.assertEqual('Playing', result)
def test_playback_status_is_paused_when_paused(self):
self.backend.playback.state.get.return_value = PlaybackController.PAUSED
result = self.mpris_object.Get(mpris.PLAYER_IFACE, 'PlaybackStatus')
self.assertEqual('Paused', result)
def test_playback_status_is_stopped_when_stopped(self):
self.backend.playback.state.get.return_value = PlaybackController.STOPPED
result = self.mpris_object.Get(mpris.PLAYER_IFACE, 'PlaybackStatus')
self.assertEqual('Stopped', result)
def test_next_should_call_next_on_backend(self):
self.mpris_object.Next()
self.assert_(self.backend.playback.next.called)
def test_pause_should_call_pause_on_backend(self):
self.mpris_object.Pause()
self.assert_(self.backend.playback.pause.called)
def test_previous_should_call_previous_on_backend(self):
self.mpris_object.Previous()
self.assert_(self.backend.playback.previous.called)
def test_stop_should_call_stop_on_backend(self):
self.mpris_object.Stop()
self.assert_(self.backend.playback.stop.called)