Map server power state num to meanful string

In _prep_server_detail(), power_state is not formatted
by _format_servers_list_power_state(). So when executing
"server show" or "server create", the power state is
represented by number. This patch map the numbers to
meanful strings.

This patch also adds power_state attribute to FakeServer,
and improves unit tests for this attribute.

Change-Id: I2ec674327de4e5133b8712ba6bb53fa5ce55e3f4
This commit is contained in:
Tang Chen 2016-05-07 14:54:44 +08:00
parent 2244915b50
commit 809239ca1e
3 changed files with 12 additions and 1 deletions
openstackclient
compute/v2
tests/compute/v2

@ -155,6 +155,11 @@ def _prep_server_detail(compute_client, server):
if 'tenant_id' in info:
info['project_id'] = info.pop('tenant_id')
# Map power state num to meanful string
if 'OS-EXT-STS:power_state' in info:
info['OS-EXT-STS:power_state'] = _format_servers_list_power_state(
info['OS-EXT-STS:power_state'])
# Remove values that are long and not too useful
info.pop('links', None)

@ -472,7 +472,8 @@ class FakeServer(object):
},
'flavor': {
'id': 'flavor-id-' + uuid.uuid4().hex,
}
},
'OS-EXT-STS:power_state': 1,
}
# Overwrite default attributes.

@ -89,6 +89,7 @@ class TestServer(compute_fakes.TestComputev2):
class TestServerCreate(TestServer):
columns = (
'OS-EXT-STS:power_state',
'addresses',
'flavor',
'id',
@ -100,6 +101,8 @@ class TestServerCreate(TestServer):
def datalist(self):
datalist = (
server._format_servers_list_power_state(
getattr(self.new_server, 'OS-EXT-STS:power_state')),
'',
self.flavor.name + ' (' + self.new_server.flavor.get('id') + ')',
self.new_server.id,
@ -1476,6 +1479,8 @@ class TestServerGeneral(TestServer):
'image': u'%s (%s)' % (_image.name, _image.id),
'project_id': u'tenant-id-xxx',
'properties': '',
'OS-EXT-STS:power_state': server._format_servers_list_power_state(
getattr(_server, 'OS-EXT-STS:power_state')),
}
# Call _prep_server_detail().