summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDean Troyer <dtroyer@gmail.com>2012-02-20 11:50:08 -0600
committerDean Troyer <dtroyer@gmail.com>2012-02-20 16:49:21 -0600
commitf4297ce10d9fde2f87e3ae45591944d6da2f0a4c (patch)
treeda2e35dc0c27090741a1ea32a17d9dcb887bd01c
parent5d5160ce5078aace8eded645f670761c4ca3212a (diff)
downloadpython-keystoneclient-f4297ce10d9fde2f87e3ae45591944d6da2f0a4c.tar.gz
Remove internal '-' from flag names
Fixes bug 936400 * global --auth-url becomes --auth_url * user-create --default-tenant becomes --tenant_id Change-Id: I483bb369556f4da2a6de61a39d00a7adbe1cf12e
-rw-r--r--keystoneclient/shell.py2
-rwxr-xr-xkeystoneclient/v2_0/shell.py4
-rw-r--r--tests/test_shell.py37
3 files changed, 39 insertions, 4 deletions
diff --git a/keystoneclient/shell.py b/keystoneclient/shell.py
index e688bcb..b1e4b2f 100644
--- a/keystoneclient/shell.py
+++ b/keystoneclient/shell.py
@@ -80,7 +80,7 @@ class OpenStackIdentityShell(object):
default=env('OS_TENANT_ID'),
help='Defaults to env[OS_TENANT_ID].')
- parser.add_argument('--auth-url',
+ parser.add_argument('--auth_url',
default=env('OS_AUTH_URL'),
help='Defaults to env[OS_AUTH_URL].')
diff --git a/keystoneclient/v2_0/shell.py b/keystoneclient/v2_0/shell.py
index a71b045..80e89ad 100755
--- a/keystoneclient/v2_0/shell.py
+++ b/keystoneclient/v2_0/shell.py
@@ -35,13 +35,13 @@ def do_user_list(kc, args):
help='Desired password.')
@utils.arg('--email', metavar='<email>', nargs='?',
help='Desired email address. (unique)')
-@utils.arg('--default-tenant', metavar='<default_tenant>', nargs='?',
+@utils.arg('--tenant_id', metavar='<tenant>', nargs='?',
help='User will join the default tenant as a Member.')
@utils.arg('--enabled', metavar='<enabled>', nargs='?', default=True,
help='Enable user immediately (Optional, default True)')
def do_user_create(kc, args):
user = kc.users.create(args.name, args.passwd, args.email,
- tenant_id=args.default_tenant, enabled=args.enabled)
+ tenant_id=args.tenant_id, enabled=args.enabled)
utils.print_dict(user._info)
diff --git a/tests/test_shell.py b/tests/test_shell.py
index 0b46d68..ada719e 100644
--- a/tests/test_shell.py
+++ b/tests/test_shell.py
@@ -58,7 +58,7 @@ class ShellTest(utils.TestCase):
b.tenant_name, b.username, b.version) == \
(DEFAULT_AUTH_URL, DEFAULT_PASSWORD, DEFAULT_TENANT_ID,
DEFAULT_TENANT_NAME, DEFAULT_USERNAME, '')
- shell('--auth-url http://0.0.0.0:5000/ --password xyzpdq '
+ shell('--auth_url http://0.0.0.0:5000/ --password xyzpdq '
'--tenant_id 1234 --tenant_name fred --username barney '
'--version 2.0 user-list')
assert do_tenant_mock.called
@@ -68,6 +68,41 @@ class ShellTest(utils.TestCase):
('http://0.0.0.0:5000/', 'xyzpdq', '1234',
'fred', 'barney', '2.0')
+ def test_shell_user_create_args(self):
+ """Test user-create args"""
+ do_uc_mock = mock.MagicMock()
+ # grab the decorators for do_user_create
+ uc_func = getattr(shell_v2_0, 'do_user_create')
+ do_uc_mock.arguments = getattr(uc_func, 'arguments', [])
+ with mock.patch('keystoneclient.v2_0.shell.do_user_create',
+ do_uc_mock):
+
+ # Test case with one --tenant_id args present: ec2 creds
+ shell('user-create --name=FOO '
+ '--pass=secrete --tenant_id=barrr --enabled=true')
+ assert do_uc_mock.called
+ ((a, b), c) = do_uc_mock.call_args
+ # restore os_tenant_id when review 4295 is merged
+ assert (b.auth_url, b.password, # b.os_tenant_id,
+ b.tenant_name, b.username, b.version) == \
+ (DEFAULT_AUTH_URL, DEFAULT_PASSWORD, # DEFAULT_TENANT_ID,
+ DEFAULT_TENANT_NAME, DEFAULT_USERNAME, '')
+ assert (b.tenant_id, b.name, b.passwd, b.enabled) == \
+ ('barrr', 'FOO', 'secrete', 'true')
+
+ # Test case with two --tenant_id args present
+ shell('--tenant_id=os-tenant user-create --name=FOO '
+ '--pass=secrete --tenant_id=barrr --enabled=true')
+ assert do_uc_mock.called
+ ((a, b), c) = do_uc_mock.call_args
+ # restore os_tenant_id when review 4295 is merged
+ assert (b.auth_url, b.password, # b.os_tenant_id,
+ b.tenant_name, b.username, b.version) == \
+ (DEFAULT_AUTH_URL, DEFAULT_PASSWORD, # 'os-tenant',
+ DEFAULT_TENANT_NAME, DEFAULT_USERNAME, '')
+ assert (b.tenant_id, b.name, b.passwd, b.enabled) == \
+ ('barrr', 'FOO', 'secrete', 'true')
+
def test_do_tenant_create(self):
do_tenant_mock = mock.MagicMock()
with mock.patch('keystoneclient.v2_0.shell.do_tenant_create',