Merge "Specify some arguments by name."

This commit is contained in:
Jenkins 2012-12-20 18:08:29 +00:00 committed by Gerrit Code Review
commit ac2ed549e5
3 changed files with 20 additions and 10 deletions
novaclient/v1_1
tests/v1_1

@ -358,12 +358,13 @@ def do_flavor_list(cs, _args):
_print_flavor_list(cs, flavors) _print_flavor_list(cs, flavors)
@utils.arg('id', @utils.arg('flavor',
metavar='<id>', metavar='<flavor>',
help="Unique ID of the flavor to delete") help="Name or ID of the flavor to delete")
def do_flavor_delete(cs, args): def do_flavor_delete(cs, args):
"""Delete a specific flavor""" """Delete a specific flavor"""
cs.flavors.delete(args.id) flavorid = _find_flavor(cs, args.flavor)
cs.flavors.delete(flavorid)
@utils.arg('flavor', @utils.arg('flavor',
@ -803,12 +804,12 @@ def do_image_delete(cs, args):
dest='flavor', dest='flavor',
metavar='<flavor>', metavar='<flavor>',
default=None, default=None,
help='Search by flavor ID') help='Search by flavor name or ID')
@utils.arg('--image', @utils.arg('--image',
dest='image', dest='image',
metavar='<image>', metavar='<image>',
default=None, default=None,
help='Search by image ID') help='Search by image name or ID')
@utils.arg('--host', @utils.arg('--host',
dest='host', dest='host',
metavar='<hostname>', metavar='<hostname>',
@ -836,14 +837,20 @@ def do_image_delete(cs, args):
help='Display information from single tenant (Admin only).') help='Display information from single tenant (Admin only).')
def do_list(cs, args): def do_list(cs, args):
"""List active servers.""" """List active servers."""
imageid = None
flavorid = None
if args.image:
imageid = _find_image(cs, args.image).id
if args.flavor:
flavorid = _find_flavor(cs, args.flavor).id
search_opts = { search_opts = {
'all_tenants': args.all_tenants, 'all_tenants': args.all_tenants,
'reservation_id': args.reservation_id, 'reservation_id': args.reservation_id,
'ip': args.ip, 'ip': args.ip,
'ip6': args.ip6, 'ip6': args.ip6,
'name': args.name, 'name': args.name,
'image': args.image, 'image': imageid,
'flavor': args.flavor, 'flavor': flavorid,
'status': args.status, 'status': args.status,
'project_id': args.tenant, 'project_id': args.tenant,
'host': args.host, 'host': args.host,

@ -544,6 +544,9 @@ class FakeHTTPClient(base_client.HTTPClient):
def delete_flavors_flavordelete(self, **kw): def delete_flavors_flavordelete(self, **kw):
return (202, None) return (202, None)
def delete_flavors_2(self, **kw):
return (202, None)
def post_flavors(self, body, **kw): def post_flavors(self, body, **kw):
return (202, {'flavor': self.get_flavors_detail()[1]['flavors'][0]}) return (202, {'flavor': self.get_flavors_detail()[1]['flavors'][0]})

@ -468,8 +468,8 @@ class ShellTest(utils.TestCase):
'detailed=1') 'detailed=1')
def test_flavor_delete(self): def test_flavor_delete(self):
self.run_command("flavor-delete flavordelete") self.run_command("flavor-delete 2")
self.assert_called('DELETE', '/flavors/flavordelete') self.assert_called('DELETE', '/flavors/2')
def test_flavor_create(self): def test_flavor_create(self):
self.run_command("flavor-create flavorcreate " self.run_command("flavor-create flavorcreate "