From f9fb30c76ca4ba6573d12c7a138ed33ac46a5d34 Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Wed, 3 Apr 2013 00:16:37 +0200 Subject: [PATCH] main/settings: Remove --interactive support --- mopidy/__main__.py | 10 +++------- mopidy/utils/settings.py | 9 +-------- tests/help_test.py | 1 - tests/utils/settings_test.py | 14 -------------- 4 files changed, 4 insertions(+), 30 deletions(-) diff --git a/mopidy/__main__.py b/mopidy/__main__.py index f6b3127b..6c1eb2ad 100644 --- a/mopidy/__main__.py +++ b/mopidy/__main__.py @@ -52,7 +52,7 @@ def main(): extensions = filter_enabled_extensions(raw_config, extensions) config = validate_config(raw_config, extensions) check_old_folders() - setup_settings(options.interactive) + setup_settings() audio = setup_audio(config) backends = setup_backends(config, extensions, audio) core = setup_core(audio, backends) @@ -93,10 +93,6 @@ def parse_options(): # NOTE First argument to add_option must be bytestrings on Python < 2.6.2 # See https://github.com/mopidy/mopidy/issues/302 for details - parser.add_option( - b'-i', '--interactive', - action='store_true', dest='interactive', - help='ask interactively for required settings which are missing') parser.add_option( b'-q', '--quiet', action='store_const', const=0, dest='verbosity_level', @@ -298,12 +294,12 @@ def validate_config(raw_config, extensions): return config -def setup_settings(interactive): +def setup_settings(): path.get_or_create_folder(path.SETTINGS_PATH) path.get_or_create_folder(path.DATA_PATH) path.get_or_create_file(path.SETTINGS_FILE) try: - settings.validate(interactive) + settings.validate() except exceptions.SettingsError as ex: logger.error(ex.message) sys.exit(1) diff --git a/mopidy/utils/settings.py b/mopidy/utils/settings.py index b61476f5..5916ee24 100644 --- a/mopidy/utils/settings.py +++ b/mopidy/utils/settings.py @@ -70,20 +70,13 @@ class SettingsProxy(object): else: super(SettingsProxy, self).__setattr__(attr, value) - def validate(self, interactive): - if interactive: - self._read_missing_settings_from_stdin(self.current, self.runtime) + def validate(self): if self.get_errors(): logger.error( 'Settings validation errors: %s', formatting.indent(self.get_errors_as_string())) raise exceptions.SettingsError('Settings validation failed.') - def _read_missing_settings_from_stdin(self, current, runtime): - for setting, value in sorted(current.iteritems()): - if isinstance(value, basestring) and len(value) == 0: - runtime[setting] = self._read_from_stdin(setting + ': ') - def _read_from_stdin(self, prompt): if '_PASSWORD' in prompt: return ( diff --git a/tests/help_test.py b/tests/help_test.py index 4a852804..b1ba9d64 100644 --- a/tests/help_test.py +++ b/tests/help_test.py @@ -17,7 +17,6 @@ class HelpTest(unittest.TestCase): output = process.communicate()[0] self.assertIn('--version', output) self.assertIn('--help', output) - self.assertIn('--interactive', output) self.assertIn('--quiet', output) self.assertIn('--verbose', output) self.assertIn('--save-debug-log', output) diff --git a/tests/utils/settings_test.py b/tests/utils/settings_test.py index 787337d2..3b1e67b0 100644 --- a/tests/utils/settings_test.py +++ b/tests/utils/settings_test.py @@ -150,20 +150,6 @@ class SettingsProxyTest(unittest.TestCase): self.settings.TEST_PATH = None self.assertEqual(self.settings.TEST_PATH, None) - def test_interactive_input_of_missing_defaults(self): - self.settings.default['TEST'] = '' - interactive_input = 'input' - self.settings._read_from_stdin = lambda _: interactive_input - self.settings.validate(interactive=True) - self.assertEqual(interactive_input, self.settings.TEST) - - def test_interactive_input_not_needed_when_setting_is_set_locally(self): - self.settings.default['TEST'] = '' - self.settings.local['TEST'] = 'test' - self.settings._read_from_stdin = lambda _: self.fail( - 'Should not read from stdin') - self.settings.validate(interactive=True) - class DidYouMeanTest(unittest.TestCase): def testSuggestoins(self):