From 2f238c6d970e93a5297956e891206af2a1a3dd32 Mon Sep 17 00:00:00 2001 From: Chris Dent Date: Fri, 20 Mar 2015 16:58:21 +0000 Subject: Set auth_plugin in __init__ This avoids auth_plugin being undefined when calling self.get_base_parser without self.main having been called. Closes-Bug: #1434264 Change-Id: Ic3a898ccecb865ff4e88d82538bcb04001d623db --- ceilometerclient/shell.py | 4 +++- ceilometerclient/tests/test_shell.py | 5 +++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ceilometerclient/shell.py b/ceilometerclient/shell.py index 8057933..10a43d5 100644 --- a/ceilometerclient/shell.py +++ b/ceilometerclient/shell.py @@ -46,6 +46,9 @@ def _positive_non_zero_int(argument_value): class CeilometerShell(object): + def __init__(self): + self.auth_plugin = ceiloclient.AuthPlugin() + def get_base_parser(self): parser = argparse.ArgumentParser( prog='ceilometer', @@ -158,7 +161,6 @@ class CeilometerShell(object): def parse_args(self, argv): # Parse args once to find version - self.auth_plugin = ceiloclient.AuthPlugin() parser = self.get_base_parser() (options, args) = parser.parse_known_args(argv) self.auth_plugin.parse_opts(options) diff --git a/ceilometerclient/tests/test_shell.py b/ceilometerclient/tests/test_shell.py index 6d6403b..c3a138e 100644 --- a/ceilometerclient/tests/test_shell.py +++ b/ceilometerclient/tests/test_shell.py @@ -92,6 +92,11 @@ class ShellHelpTest(ShellTestBase): self.assertThat(help_text, matchers.MatchesRegex(r, self.RE_OPTIONS)) + def test_get_base_parser(self): + standalone_shell = ceilometer_shell.CeilometerShell() + parser = standalone_shell.get_base_parser() + self.assertEqual(600, parser.get_default('timeout')) + class ShellKeystoneV2Test(ShellTestBase): -- cgit v1.2.1