diff options
| author | Jenkins <jenkins@review.openstack.org> | 2012-11-16 03:49:31 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2012-11-16 03:49:31 +0000 |
| commit | 08582516b3eec3327d2f12def4b35edf6a3c0b26 (patch) | |
| tree | 7d08ef0a2ecb0a555f03c0c9020dc93255ebc06a | |
| parent | e174e00158064601f5a55e78e31c8de806a35066 (diff) | |
| parent | ac180b95d1867c4b4daf9729e97ce93f3201d178 (diff) | |
| download | oslo-08582516b3eec3327d2f12def4b35edf6a3c0b26.tar.gz oslo-08582516b3eec3327d2f12def4b35edf6a3c0b26.tar.xz oslo-08582516b3eec3327d2f12def4b35edf6a3c0b26.zip | |
Merge "Use stock argparse --version behaviour"
| -rw-r--r-- | openstack/common/cfg.py | 35 | ||||
| -rw-r--r-- | tests/unit/test_cfg.py | 4 |
2 files changed, 3 insertions, 36 deletions
diff --git a/openstack/common/cfg.py b/openstack/common/cfg.py index 531c650..d234608 100644 --- a/openstack/common/cfg.py +++ b/openstack/common/cfg.py @@ -925,33 +925,6 @@ class MultiConfigParser(object): raise KeyError -class _VersionAction(argparse.Action): - - def __init__(self, - option_strings, - version=None, - dest=argparse.SUPPRESS, - default=argparse.SUPPRESS, - help="show program's version number and exit"): - super(_VersionAction, self).__init__(option_strings=option_strings, - dest=dest, - default=default, - nargs=0, - help=help) - self.version = version - - def __call__(self, parser, namespace, values, option_string=None): - version = self.version - if version is None: - version = parser.version - formatter = parser._get_formatter() - formatter.add_text(version) - message = formatter.format_help() - if message: - parser._print_message(message, sys.stdout) - sys.exit(0) - - class ConfigCliParser(argparse.ArgumentParser): def __init__(self, prog=None, usage=None, version=None, *args, **kwargs): @@ -962,9 +935,7 @@ class ConfigCliParser(argparse.ArgumentParser): if usage is not None: self.usage = usage.replace("%prog", self.prog) - self.add_argument('--version', - action=_VersionAction, - version=version) + self.add_argument('--version', action='version', version=version) self._optionals.title = 'Options' def add_argument(self, *args, **kwargs): @@ -1008,10 +979,6 @@ class ConfigCliParser(argparse.ArgumentParser): msg = msg.replace("usage:", "Usage:") print >>file, msg - def print_version(self, file=None): - super(ConfigCliParser, self)._print_message(self.format_version(), - file) - class ConfigOpts(collections.Mapping): diff --git a/tests/unit/test_cfg.py b/tests/unit/test_cfg.py index 48732d5..d4559d0 100644 --- a/tests/unit/test_cfg.py +++ b/tests/unit/test_cfg.py @@ -255,9 +255,9 @@ class CliOptsTestCase(BaseTestCase): self.assertTrue('--config-file' in sys.stdout.getvalue()) def test_version(self): - self.stubs.Set(sys, 'stdout', StringIO.StringIO()) + self.stubs.Set(sys, 'stderr', StringIO.StringIO()) self.assertRaises(SystemExit, self.conf, ['--version']) - self.assertTrue('1.0' in sys.stdout.getvalue()) + self.assertTrue('1.0' in sys.stderr.getvalue()) def test_config_file(self): paths = self.create_tempfiles([('1', '[DEFAULT]'), |
