Merge pull request #983 from jodal/feature/remove-test-only-code
Remove test-only code
This commit is contained in:
commit
e6fe9f40e9
@ -21,11 +21,8 @@ class MixerController(object):
|
||||
|
||||
The volume scale is linear.
|
||||
"""
|
||||
if self._mixer:
|
||||
if self._mixer is not None:
|
||||
return self._mixer.get_volume().get()
|
||||
else:
|
||||
# For testing
|
||||
return self._volume
|
||||
|
||||
def set_volume(self, volume):
|
||||
"""Set the volume.
|
||||
@ -34,31 +31,22 @@ class MixerController(object):
|
||||
|
||||
The volume scale is linear.
|
||||
"""
|
||||
if self._mixer:
|
||||
if self._mixer is not None:
|
||||
self._mixer.set_volume(volume)
|
||||
else:
|
||||
# For testing
|
||||
self._volume = volume
|
||||
|
||||
def get_mute(self):
|
||||
"""Get mute state.
|
||||
|
||||
:class:`True` if muted, :class:`False` otherwise.
|
||||
:class:`True` if muted, :class:`False` unmuted, :class:`None` if
|
||||
unknown.
|
||||
"""
|
||||
if self._mixer:
|
||||
if self._mixer is not None:
|
||||
return self._mixer.get_mute().get()
|
||||
else:
|
||||
# For testing
|
||||
return self._mute
|
||||
|
||||
def set_mute(self, mute):
|
||||
"""Set mute state.
|
||||
|
||||
:class:`True` to mute, :class:`False` to unmute.
|
||||
"""
|
||||
mute = bool(mute)
|
||||
if self._mixer:
|
||||
self._mixer.set_mute(mute)
|
||||
else:
|
||||
# For testing
|
||||
self._mute = mute
|
||||
if self._mixer is not None:
|
||||
self._mixer.set_mute(bool(mute))
|
||||
|
||||
@ -2,6 +2,8 @@ from __future__ import absolute_import, unicode_literals
|
||||
|
||||
import logging
|
||||
|
||||
import pykka
|
||||
|
||||
from mopidy import listener
|
||||
|
||||
|
||||
@ -147,3 +149,23 @@ class MixerListener(listener.Listener):
|
||||
:type mute: bool
|
||||
"""
|
||||
pass
|
||||
|
||||
|
||||
class DummyMixer(pykka.ThreadingActor, Mixer):
|
||||
|
||||
def __init__(self):
|
||||
super(DummyMixer, self).__init__()
|
||||
self._volume = None
|
||||
self._mute = None
|
||||
|
||||
def get_volume(self):
|
||||
return self._volume
|
||||
|
||||
def set_volume(self, volume):
|
||||
self._volume = volume
|
||||
|
||||
def get_mute(self):
|
||||
return self._mute
|
||||
|
||||
def set_mute(self, mute):
|
||||
self._mute = mute
|
||||
|
||||
@ -2,27 +2,34 @@ from __future__ import absolute_import, unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
from mopidy import core
|
||||
import mock
|
||||
|
||||
from mopidy import core, mixer
|
||||
|
||||
|
||||
class CoreMixerTest(unittest.TestCase):
|
||||
def setUp(self): # noqa: N802
|
||||
self.core = core.Core(mixer=None, backends=[])
|
||||
self.mixer = mock.Mock(spec=mixer.Mixer)
|
||||
self.core = core.Core(mixer=self.mixer, backends=[])
|
||||
|
||||
def test_volume(self):
|
||||
self.assertEqual(self.core.mixer.get_volume(), None)
|
||||
|
||||
self.core.mixer.set_volume(30)
|
||||
def test_get_volume(self):
|
||||
self.mixer.get_volume.return_value.get.return_value = 30
|
||||
|
||||
self.assertEqual(self.core.mixer.get_volume(), 30)
|
||||
self.mixer.get_volume.assert_called_once_with()
|
||||
|
||||
self.core.mixer.set_volume(70)
|
||||
def test_set_volume(self):
|
||||
self.core.mixer.set_volume(30)
|
||||
|
||||
self.assertEqual(self.core.mixer.get_volume(), 70)
|
||||
self.mixer.set_volume.assert_called_once_with(30)
|
||||
|
||||
def test_mute(self):
|
||||
self.assertEqual(self.core.mixer.get_mute(), False)
|
||||
|
||||
self.core.mixer.set_mute(True)
|
||||
def test_get_mute(self):
|
||||
self.mixer.get_mute.return_value.get.return_value = True
|
||||
|
||||
self.assertEqual(self.core.mixer.get_mute(), True)
|
||||
self.mixer.get_mute.assert_called_once_with()
|
||||
|
||||
def test_set_mute(self):
|
||||
self.core.mixer.set_mute(True)
|
||||
|
||||
self.mixer.set_mute.assert_called_once_with(True)
|
||||
|
||||
@ -6,7 +6,7 @@ import mock
|
||||
|
||||
import pykka
|
||||
|
||||
from mopidy import core
|
||||
from mopidy import core, mixer
|
||||
from mopidy.backend import dummy
|
||||
from mopidy.mpd import session, uri_mapper
|
||||
|
||||
@ -32,8 +32,10 @@ class BaseTestCase(unittest.TestCase):
|
||||
}
|
||||
|
||||
def setUp(self): # noqa: N802
|
||||
self.mixer = mixer.DummyMixer.start().proxy()
|
||||
self.backend = dummy.create_dummy_backend_proxy()
|
||||
self.core = core.Core.start(backends=[self.backend]).proxy()
|
||||
self.core = core.Core.start(
|
||||
mixer=self.mixer, backends=[self.backend]).proxy()
|
||||
|
||||
self.uri_map = uri_mapper.MpdUriMapper(self.core)
|
||||
self.connection = MockConnection()
|
||||
|
||||
@ -4,7 +4,7 @@ import unittest
|
||||
|
||||
import pykka
|
||||
|
||||
from mopidy import core
|
||||
from mopidy import core, mixer
|
||||
from mopidy.backend import dummy
|
||||
from mopidy.core import PlaybackState
|
||||
from mopidy.models import Track
|
||||
@ -21,8 +21,10 @@ STOPPED = PlaybackState.STOPPED
|
||||
|
||||
class StatusHandlerTest(unittest.TestCase):
|
||||
def setUp(self): # noqa: N802
|
||||
self.mixer = mixer.DummyMixer.start().proxy()
|
||||
self.backend = dummy.create_dummy_backend_proxy()
|
||||
self.core = core.Core.start(backends=[self.backend]).proxy()
|
||||
self.core = core.Core.start(
|
||||
mixer=self.mixer, backends=[self.backend]).proxy()
|
||||
self.dispatcher = dispatcher.MpdDispatcher(core=self.core)
|
||||
self.context = self.dispatcher.context
|
||||
|
||||
|
||||
@ -13,6 +13,9 @@ from mopidy.utils import jsonrpc
|
||||
|
||||
|
||||
class Calculator(object):
|
||||
def __init__(self):
|
||||
self._mem = None
|
||||
|
||||
def model(self):
|
||||
return 'TI83'
|
||||
|
||||
@ -23,6 +26,12 @@ class Calculator(object):
|
||||
def sub(self, a, b):
|
||||
return a - b
|
||||
|
||||
def set_mem(self, value):
|
||||
self._mem = value
|
||||
|
||||
def get_mem(self):
|
||||
return self._mem
|
||||
|
||||
def describe(self):
|
||||
return {
|
||||
'add': 'Returns the sum of the terms',
|
||||
@ -43,13 +52,14 @@ class JsonRpcTestBase(unittest.TestCase):
|
||||
def setUp(self): # noqa: N802
|
||||
self.backend = dummy.create_dummy_backend_proxy()
|
||||
self.core = core.Core.start(backends=[self.backend]).proxy()
|
||||
self.calc = Calculator()
|
||||
|
||||
self.jrw = jsonrpc.JsonRpcWrapper(
|
||||
objects={
|
||||
'hello': lambda: 'Hello, world!',
|
||||
'calc': Calculator(),
|
||||
'calc': self.calc,
|
||||
'core': self.core,
|
||||
'core.mixer': self.core.mixer,
|
||||
'core.playback': self.core.playback,
|
||||
'core.tracklist': self.core.tracklist,
|
||||
'get_uri_schemes': self.core.get_uri_schemes,
|
||||
},
|
||||
@ -188,12 +198,12 @@ class JsonRpcSingleCommandTest(JsonRpcTestBase):
|
||||
def test_call_method_on_actor_member(self):
|
||||
request = {
|
||||
'jsonrpc': '2.0',
|
||||
'method': 'core.mixer.get_volume',
|
||||
'method': 'core.playback.get_time_position',
|
||||
'id': 1,
|
||||
}
|
||||
response = self.jrw.handle_data(request)
|
||||
|
||||
self.assertEqual(response['result'], None)
|
||||
self.assertEqual(response['result'], 0)
|
||||
|
||||
def test_call_method_which_is_a_directly_mounted_actor_member(self):
|
||||
# 'get_uri_schemes' isn't a regular callable, but a Pykka
|
||||
@ -215,26 +225,24 @@ class JsonRpcSingleCommandTest(JsonRpcTestBase):
|
||||
def test_call_method_with_positional_params(self):
|
||||
request = {
|
||||
'jsonrpc': '2.0',
|
||||
'method': 'core.mixer.set_volume',
|
||||
'params': [37],
|
||||
'method': 'calc.add',
|
||||
'params': [3, 4],
|
||||
'id': 1,
|
||||
}
|
||||
response = self.jrw.handle_data(request)
|
||||
|
||||
self.assertEqual(response['result'], None)
|
||||
self.assertEqual(self.core.mixer.get_volume().get(), 37)
|
||||
self.assertEqual(response['result'], 7)
|
||||
|
||||
def test_call_methods_with_named_params(self):
|
||||
request = {
|
||||
'jsonrpc': '2.0',
|
||||
'method': 'core.mixer.set_volume',
|
||||
'params': {'volume': 37},
|
||||
'method': 'calc.add',
|
||||
'params': {'a': 3, 'b': 4},
|
||||
'id': 1,
|
||||
}
|
||||
response = self.jrw.handle_data(request)
|
||||
|
||||
self.assertEqual(response['result'], None)
|
||||
self.assertEqual(self.core.mixer.get_volume().get(), 37)
|
||||
self.assertEqual(response['result'], 7)
|
||||
|
||||
|
||||
class JsonRpcSingleNotificationTest(JsonRpcTestBase):
|
||||
@ -248,17 +256,17 @@ class JsonRpcSingleNotificationTest(JsonRpcTestBase):
|
||||
self.assertIsNone(response)
|
||||
|
||||
def test_notification_makes_an_observable_change(self):
|
||||
self.assertEqual(self.core.mixer.get_volume().get(), None)
|
||||
self.assertEqual(self.calc.get_mem(), None)
|
||||
|
||||
request = {
|
||||
'jsonrpc': '2.0',
|
||||
'method': 'core.mixer.set_volume',
|
||||
'method': 'calc.set_mem',
|
||||
'params': [37],
|
||||
}
|
||||
response = self.jrw.handle_data(request)
|
||||
|
||||
self.assertIsNone(response)
|
||||
self.assertEqual(self.core.mixer.get_volume().get(), 37)
|
||||
self.assertEqual(self.calc.get_mem(), 37)
|
||||
|
||||
def test_notification_unknown_method_returns_nothing(self):
|
||||
request = {
|
||||
@ -526,7 +534,7 @@ class JsonRpcBatchErrorTest(JsonRpcTestBase):
|
||||
def test_batch_of_both_successfull_and_failing_requests(self):
|
||||
request = [
|
||||
# Call with positional params
|
||||
{'jsonrpc': '2.0', 'method': 'core.mixer.set_volume',
|
||||
{'jsonrpc': '2.0', 'method': 'core.playback.seek',
|
||||
'params': [47], 'id': '1'},
|
||||
# Notification
|
||||
{'jsonrpc': '2.0', 'method': 'core.tracklist.set_consume',
|
||||
@ -547,7 +555,7 @@ class JsonRpcBatchErrorTest(JsonRpcTestBase):
|
||||
|
||||
self.assertEqual(len(response), 5)
|
||||
response = dict((row['id'], row) for row in response)
|
||||
self.assertEqual(response['1']['result'], None)
|
||||
self.assertEqual(response['1']['result'], False)
|
||||
self.assertEqual(response['2']['result'], None)
|
||||
self.assertEqual(response[None]['error']['code'], -32600)
|
||||
self.assertEqual(response['5']['error']['code'], -32601)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user