diff --git a/mopidy/core/mixer.py b/mopidy/core/mixer.py index 1f5ada9e..3388d706 100644 --- a/mopidy/core/mixer.py +++ b/mopidy/core/mixer.py @@ -25,10 +25,11 @@ class MixerController(object): def set_volume(self, volume): """Set the volume. - The volume is defined as an integer in range [0..100] or :class:`None` - if the mixer is disabled. + The volume is defined as an integer in range [0..100]. The volume scale is linear. + + Returns :class:`True` if call is successful, otherwise :class:`False`. """ if self._mixer is None: return False @@ -41,9 +42,7 @@ class MixerController(object): :class:`True` if muted, :class:`False` unmuted, :class:`None` if unknown. """ - if self._mixer is None: - return False - else: + if self._mixer is not None: return self._mixer.get_mute().get() def set_mute(self, mute): diff --git a/mopidy/mpd/protocol/audio_output.py b/mopidy/mpd/protocol/audio_output.py index 6ffedcf1..565ea3d0 100644 --- a/mopidy/mpd/protocol/audio_output.py +++ b/mopidy/mpd/protocol/audio_output.py @@ -14,7 +14,7 @@ def disableoutput(context, outputid): """ if outputid == 0: success = context.core.mixer.set_mute(False).get() - if success is False: + if not success: raise exceptions.MpdSystemError('problems disabling output') else: raise exceptions.MpdNoExistError('No such audio output') @@ -31,7 +31,7 @@ def enableoutput(context, outputid): """ if outputid == 0: success = context.core.mixer.set_mute(True).get() - if success is False: + if not success: raise exceptions.MpdSystemError('problems enabling output') else: raise exceptions.MpdNoExistError('No such audio output') @@ -49,7 +49,7 @@ def toggleoutput(context, outputid): if outputid == 0: mute_status = context.core.mixer.get_mute().get() success = context.core.mixer.set_mute(not mute_status) - if success is False: + if not success: raise exceptions.MpdSystemError('problems toggling output') else: raise exceptions.MpdNoExistError('No such audio output') diff --git a/mopidy/mpd/protocol/playback.py b/mopidy/mpd/protocol/playback.py index 4cf8b2e8..86f2e36b 100644 --- a/mopidy/mpd/protocol/playback.py +++ b/mopidy/mpd/protocol/playback.py @@ -397,7 +397,7 @@ def setvol(context, volume): # NOTE: we use INT as clients can pass in +N etc. value = min(max(0, volume), 100) success = context.core.mixer.set_volume(value).get() - if success is False: + if not success: raise exceptions.MpdSystemError('problems setting volume') diff --git a/tests/core/test_mixer.py b/tests/core/test_mixer.py index 6485f3e8..c4126eaa 100644 --- a/tests/core/test_mixer.py +++ b/tests/core/test_mixer.py @@ -42,17 +42,17 @@ class CoreNoneMixerTest(unittest.TestCase): def setUp(self): # noqa: N802 self.core = core.Core(mixer=None, backends=[]) - def test_get_volume_return_none(self): + def test_get_volume_return_none_because_it_is_unknown(self): self.assertEqual(self.core.mixer.get_volume(), None) - def test_set_volume_return_false(self): + def test_set_volume_return_false_because_it_failed(self): self.assertEqual(self.core.mixer.set_volume(30), False) - def test_get_set_mute_return_proper_state(self): - self.assertEqual(self.core.mixer.set_mute(False), False) - self.assertEqual(self.core.mixer.get_mute(), False) + def test_get_mute_return_none_because_it_is_unknown(self): + self.assertEqual(self.core.mixer.get_mute(), None) + + def test_set_mute_return_false_because_it_failed(self): self.assertEqual(self.core.mixer.set_mute(True), False) - self.assertEqual(self.core.mixer.get_mute(), False) @mock.patch.object(mixer.MixerListener, 'send') diff --git a/tests/mpd/protocol/test_audio_output.py b/tests/mpd/protocol/test_audio_output.py index 322bf181..b42b4c56 100644 --- a/tests/mpd/protocol/test_audio_output.py +++ b/tests/mpd/protocol/test_audio_output.py @@ -90,20 +90,22 @@ class AudioOutputHandlerNoneMixerTest(protocol.BaseTestCase): enable_mixer = False def test_enableoutput(self): - self.core.mixer.set_mute(False) + self.assertEqual(self.core.mixer.get_mute().get(), None) self.send_request('enableoutput "0"') self.assertInResponse( 'ACK [52@0] {enableoutput} problems enabling output') - self.assertEqual(self.core.mixer.get_mute().get(), False) + + self.assertEqual(self.core.mixer.get_mute().get(), None) def test_disableoutput(self): - self.core.mixer.set_mute(True) + self.assertEqual(self.core.mixer.get_mute().get(), None) self.send_request('disableoutput "0"') self.assertInResponse( 'ACK [52@0] {disableoutput} problems disabling output') - self.assertEqual(self.core.mixer.get_mute().get(), False) + + self.assertEqual(self.core.mixer.get_mute().get(), None) def test_outputs_when_unmuted(self): self.core.mixer.set_mute(False)