mopidy --list-settings fails on fresh install
This commit is contained in:
parent
8d419bb255
commit
f33c65ddfe
@ -129,6 +129,14 @@ def validate_settings(defaults, settings):
|
|||||||
|
|
||||||
return errors
|
return errors
|
||||||
|
|
||||||
|
def mask_value_if_secret(key, value):
|
||||||
|
masked_value = value
|
||||||
|
|
||||||
|
if key.endswith('PASSWORD') and value:
|
||||||
|
masked_value = u'********'
|
||||||
|
|
||||||
|
return masked_value
|
||||||
|
|
||||||
def list_settings_optparse_callback(*args):
|
def list_settings_optparse_callback(*args):
|
||||||
"""
|
"""
|
||||||
Prints a list of all settings.
|
Prints a list of all settings.
|
||||||
@ -141,8 +149,7 @@ def list_settings_optparse_callback(*args):
|
|||||||
lines = []
|
lines = []
|
||||||
for (key, value) in sorted(settings.current.iteritems()):
|
for (key, value) in sorted(settings.current.iteritems()):
|
||||||
default_value = settings.default.get(key)
|
default_value = settings.default.get(key)
|
||||||
if key.endswith('PASSWORD') and len(value):
|
value = mask_value_if_secret(key, value)
|
||||||
value = u'********'
|
|
||||||
lines.append(u'%s:' % key)
|
lines.append(u'%s:' % key)
|
||||||
lines.append(u' Value: %s' % repr(value))
|
lines.append(u' Value: %s' % repr(value))
|
||||||
if value != default_value and default_value is not None:
|
if value != default_value and default_value is not None:
|
||||||
|
|||||||
@ -3,6 +3,7 @@ import unittest
|
|||||||
|
|
||||||
from mopidy import settings as default_settings_module, SettingsError
|
from mopidy import settings as default_settings_module, SettingsError
|
||||||
from mopidy.utils.settings import validate_settings, SettingsProxy
|
from mopidy.utils.settings import validate_settings, SettingsProxy
|
||||||
|
from mopidy.utils.settings import mask_value_if_secret
|
||||||
|
|
||||||
class ValidateSettingsTest(unittest.TestCase):
|
class ValidateSettingsTest(unittest.TestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -46,6 +47,13 @@ class ValidateSettingsTest(unittest.TestCase):
|
|||||||
{'FOO': '', 'BAR': ''})
|
{'FOO': '', 'BAR': ''})
|
||||||
self.assertEquals(len(result), 2)
|
self.assertEquals(len(result), 2)
|
||||||
|
|
||||||
|
def test_mask_if_secret(self):
|
||||||
|
not_secret = mask_value_if_secret('SPOTIFY_USERNAME', 'foo')
|
||||||
|
self.assertEquals('foo', not_secret)
|
||||||
|
|
||||||
|
secret = mask_value_if_secret('SPOTIFY_PASSWORD', 'bar')
|
||||||
|
self.assertEquals(u'********', secret)
|
||||||
|
|
||||||
|
|
||||||
class SettingsProxyTest(unittest.TestCase):
|
class SettingsProxyTest(unittest.TestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user