Merge "Added exception when namespace option is missing"

This commit is contained in:
Jenkins 2017-08-04 05:30:18 +00:00 committed by Gerrit Code Review
commit aa9c01dcdf
2 changed files with 9 additions and 3 deletions

View File

@ -748,7 +748,13 @@ def main(args=None):
logging.basicConfig(level=logging.WARN) logging.basicConfig(level=logging.WARN)
conf = cfg.ConfigOpts() conf = cfg.ConfigOpts()
register_cli_opts(conf) register_cli_opts(conf)
conf(args, version=version) try:
conf(args, version=version)
except cfg.RequiredOptError:
conf.print_help()
if not sys.argv[1:]:
raise SystemExit
raise
generate(conf) generate(conf)

View File

@ -1581,10 +1581,10 @@ class GeneratorRaiseErrorTestCase(base.BaseTestCase):
with mock.patch('pkg_resources.iter_entry_points', fake_eps): with mock.patch('pkg_resources.iter_entry_points', fake_eps):
self.assertRaises(FakeException, generator.generate, self.conf) self.assertRaises(FakeException, generator.generate, self.conf)
def test_generator_call_with_no_arguments_raises_error(self): def test_generator_call_with_no_arguments_raises_system_exit(self):
testargs = ['oslo-config-generator'] testargs = ['oslo-config-generator']
with mock.patch('sys.argv', testargs): with mock.patch('sys.argv', testargs):
self.assertRaises(cfg.RequiredOptError, generator.main, []) self.assertRaises(SystemExit, generator.main, [])
class ChangeDefaultsTestCase(base.BaseTestCase): class ChangeDefaultsTestCase(base.BaseTestCase):