mpd: Use core.mixer for volume/mute

This commit is contained in:
Stein Magnus Jodal 2015-02-12 10:31:03 +01:00
parent 91bcdddf56
commit e1fa76a48e
6 changed files with 20 additions and 20 deletions

View File

@ -13,7 +13,7 @@ def disableoutput(context, outputid):
Turns an output off. Turns an output off.
""" """
if outputid == 0: if outputid == 0:
context.core.playback.set_mute(False) context.core.mixer.set_mute(False)
else: else:
raise exceptions.MpdNoExistError('No such audio output') raise exceptions.MpdNoExistError('No such audio output')
@ -28,7 +28,7 @@ def enableoutput(context, outputid):
Turns an output on. Turns an output on.
""" """
if outputid == 0: if outputid == 0:
context.core.playback.set_mute(True) context.core.mixer.set_mute(True)
else: else:
raise exceptions.MpdNoExistError('No such audio output') raise exceptions.MpdNoExistError('No such audio output')
@ -55,7 +55,7 @@ def outputs(context):
Shows information about all outputs. Shows information about all outputs.
""" """
muted = 1 if context.core.playback.get_mute().get() else 0 muted = 1 if context.core.mixer.get_mute().get() else 0
return [ return [
('outputid', 0), ('outputid', 0),
('outputname', 'Mute'), ('outputname', 'Mute'),

View File

@ -397,7 +397,7 @@ def setvol(context, volume):
- issues ``setvol 50`` without quotes around the argument. - issues ``setvol 50`` without quotes around the argument.
""" """
# NOTE: we use INT as clients can pass in +N etc. # NOTE: we use INT as clients can pass in +N etc.
context.core.playback.volume = min(max(0, volume), 100) context.core.mixer.set_volume(min(max(0, volume), 100))
@protocol.commands.add('single', state=protocol.BOOL) @protocol.commands.add('single', state=protocol.BOOL)

View File

@ -175,7 +175,7 @@ def status(context):
futures = { futures = {
'tracklist.length': context.core.tracklist.length, 'tracklist.length': context.core.tracklist.length,
'tracklist.version': context.core.tracklist.version, 'tracklist.version': context.core.tracklist.version,
'playback.volume': context.core.playback.volume, 'mixer.volume': context.core.mixer.get_volume(),
'tracklist.consume': context.core.tracklist.consume, 'tracklist.consume': context.core.tracklist.consume,
'tracklist.random': context.core.tracklist.random, 'tracklist.random': context.core.tracklist.random,
'tracklist.repeat': context.core.tracklist.repeat, 'tracklist.repeat': context.core.tracklist.repeat,
@ -289,7 +289,7 @@ def _status_time_total(futures):
def _status_volume(futures): def _status_volume(futures):
volume = futures['playback.volume'].get() volume = futures['mixer.volume'].get()
if volume is not None: if volume is not None:
return volume return volume
else: else:

View File

@ -5,12 +5,12 @@ from tests.mpd import protocol
class AudioOutputHandlerTest(protocol.BaseTestCase): class AudioOutputHandlerTest(protocol.BaseTestCase):
def test_enableoutput(self): def test_enableoutput(self):
self.core.playback.mute = False self.core.mixer.set_mute(False)
self.send_request('enableoutput "0"') self.send_request('enableoutput "0"')
self.assertInResponse('OK') self.assertInResponse('OK')
self.assertEqual(self.core.playback.mute.get(), True) self.assertEqual(self.core.mixer.get_mute().get(), True)
def test_enableoutput_unknown_outputid(self): def test_enableoutput_unknown_outputid(self):
self.send_request('enableoutput "7"') self.send_request('enableoutput "7"')
@ -18,12 +18,12 @@ class AudioOutputHandlerTest(protocol.BaseTestCase):
self.assertInResponse('ACK [50@0] {enableoutput} No such audio output') self.assertInResponse('ACK [50@0] {enableoutput} No such audio output')
def test_disableoutput(self): def test_disableoutput(self):
self.core.playback.mute = True self.core.mixer.set_mute(True)
self.send_request('disableoutput "0"') self.send_request('disableoutput "0"')
self.assertInResponse('OK') self.assertInResponse('OK')
self.assertEqual(self.core.playback.mute.get(), False) self.assertEqual(self.core.mixer.get_mute().get(), False)
def test_disableoutput_unknown_outputid(self): def test_disableoutput_unknown_outputid(self):
self.send_request('disableoutput "7"') self.send_request('disableoutput "7"')
@ -32,7 +32,7 @@ class AudioOutputHandlerTest(protocol.BaseTestCase):
'ACK [50@0] {disableoutput} No such audio output') 'ACK [50@0] {disableoutput} No such audio output')
def test_outputs_when_unmuted(self): def test_outputs_when_unmuted(self):
self.core.playback.mute = False self.core.mixer.set_mute(False)
self.send_request('outputs') self.send_request('outputs')
@ -42,7 +42,7 @@ class AudioOutputHandlerTest(protocol.BaseTestCase):
self.assertInResponse('OK') self.assertInResponse('OK')
def test_outputs_when_muted(self): def test_outputs_when_muted(self):
self.core.playback.mute = True self.core.mixer.set_mute(True)
self.send_request('outputs') self.send_request('outputs')

View File

@ -80,37 +80,37 @@ class PlaybackOptionsHandlerTest(protocol.BaseTestCase):
def test_setvol_below_min(self): def test_setvol_below_min(self):
self.send_request('setvol "-10"') self.send_request('setvol "-10"')
self.assertEqual(0, self.core.playback.volume.get()) self.assertEqual(0, self.core.mixer.get_volume().get())
self.assertInResponse('OK') self.assertInResponse('OK')
def test_setvol_min(self): def test_setvol_min(self):
self.send_request('setvol "0"') self.send_request('setvol "0"')
self.assertEqual(0, self.core.playback.volume.get()) self.assertEqual(0, self.core.mixer.get_volume().get())
self.assertInResponse('OK') self.assertInResponse('OK')
def test_setvol_middle(self): def test_setvol_middle(self):
self.send_request('setvol "50"') self.send_request('setvol "50"')
self.assertEqual(50, self.core.playback.volume.get()) self.assertEqual(50, self.core.mixer.get_volume().get())
self.assertInResponse('OK') self.assertInResponse('OK')
def test_setvol_max(self): def test_setvol_max(self):
self.send_request('setvol "100"') self.send_request('setvol "100"')
self.assertEqual(100, self.core.playback.volume.get()) self.assertEqual(100, self.core.mixer.get_volume().get())
self.assertInResponse('OK') self.assertInResponse('OK')
def test_setvol_above_max(self): def test_setvol_above_max(self):
self.send_request('setvol "110"') self.send_request('setvol "110"')
self.assertEqual(100, self.core.playback.volume.get()) self.assertEqual(100, self.core.mixer.get_volume().get())
self.assertInResponse('OK') self.assertInResponse('OK')
def test_setvol_plus_is_ignored(self): def test_setvol_plus_is_ignored(self):
self.send_request('setvol "+10"') self.send_request('setvol "+10"')
self.assertEqual(10, self.core.playback.volume.get()) self.assertEqual(10, self.core.mixer.get_volume().get())
self.assertInResponse('OK') self.assertInResponse('OK')
def test_setvol_without_quotes(self): def test_setvol_without_quotes(self):
self.send_request('setvol 50') self.send_request('setvol 50')
self.assertEqual(50, self.core.playback.volume.get()) self.assertEqual(50, self.core.mixer.get_volume().get())
self.assertInResponse('OK') self.assertInResponse('OK')
def test_single_off(self): def test_single_off(self):

View File

@ -52,7 +52,7 @@ class StatusHandlerTest(unittest.TestCase):
self.assertEqual(int(result['volume']), -1) self.assertEqual(int(result['volume']), -1)
def test_status_method_contains_volume(self): def test_status_method_contains_volume(self):
self.core.playback.volume = 17 self.core.mixer.set_volume(17)
result = dict(status.status(self.context)) result = dict(status.status(self.context))
self.assertIn('volume', result) self.assertIn('volume', result)
self.assertEqual(int(result['volume']), 17) self.assertEqual(int(result['volume']), 17)