Skip to content

Commit 809239c

Browse files
author
Tang Chen
committed
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
1 parent 2244915 commit 809239c

3 files changed

Lines changed: 12 additions & 1 deletion

File tree

openstackclient/compute/v2/server.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,11 @@ def _prep_server_detail(compute_client, server):
155155
if 'tenant_id' in info:
156156
info['project_id'] = info.pop('tenant_id')
157157

158+
# Map power state num to meanful string
159+
if 'OS-EXT-STS:power_state' in info:
160+
info['OS-EXT-STS:power_state'] = _format_servers_list_power_state(
161+
info['OS-EXT-STS:power_state'])
162+
158163
# Remove values that are long and not too useful
159164
info.pop('links', None)
160165

openstackclient/tests/compute/v2/fakes.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -472,7 +472,8 @@ def create_one_server(attrs=None, methods=None):
472472
},
473473
'flavor': {
474474
'id': 'flavor-id-' + uuid.uuid4().hex,
475-
}
475+
},
476+
'OS-EXT-STS:power_state': 1,
476477
}
477478

478479
# Overwrite default attributes.

openstackclient/tests/compute/v2/test_server.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ def run_method_with_servers(self, method_name, server_count):
8989
class TestServerCreate(TestServer):
9090

9191
columns = (
92+
'OS-EXT-STS:power_state',
9293
'addresses',
9394
'flavor',
9495
'id',
@@ -100,6 +101,8 @@ class TestServerCreate(TestServer):
100101

101102
def datalist(self):
102103
datalist = (
104+
server._format_servers_list_power_state(
105+
getattr(self.new_server, 'OS-EXT-STS:power_state')),
103106
'',
104107
self.flavor.name + ' (' + self.new_server.flavor.get('id') + ')',
105108
self.new_server.id,
@@ -1476,6 +1479,8 @@ def test_prep_server_detail(self, find_resource):
14761479
'image': u'%s (%s)' % (_image.name, _image.id),
14771480
'project_id': u'tenant-id-xxx',
14781481
'properties': '',
1482+
'OS-EXT-STS:power_state': server._format_servers_list_power_state(
1483+
getattr(_server, 'OS-EXT-STS:power_state')),
14791484
}
14801485

14811486
# Call _prep_server_detail().

0 commit comments

Comments
 (0)