Skip to content

Commit a8e4521

Browse files
committed
[functional] Remove duplication of boot helper
The base test class for functionl tests has an unified helper method for booting VM and waiting for active status. This method can be easily extended with one new argumen `flavor` to cover the case required by `TestServersResize` test case. This patch ports `TestServersResize` to use generic helper method. Change-Id: I9a53066dbb8907ed87a70f207b1e41b5b8a66908
1 parent 5c8faaf commit a8e4521

2 files changed

Lines changed: 17 additions & 26 deletions

File tree

novaclient/tests/functional/base.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -468,14 +468,15 @@ def _get_list_of_values_from_single_column_table(self, table, column):
468468
values.append(line.split("|")[1].strip())
469469
return values
470470

471-
def _create_server(self, name=None, with_network=True, add_cleanup=True,
472-
**kwargs):
471+
def _create_server(self, name=None, flavor=None, with_network=True,
472+
add_cleanup=True, **kwargs):
473473
name = name or self.name_generate(prefix='server')
474474
if with_network:
475475
nics = [{"net-id": self.network.id}]
476476
else:
477477
nics = None
478-
server = self.client.servers.create(name, self.image, self.flavor,
478+
flavor = flavor or self.flavor
479+
server = self.client.servers.create(name, self.image, flavor,
479480
nics=nics, **kwargs)
480481
if add_cleanup:
481482
self.addCleanup(server.delete)

novaclient/tests/functional/v2/test_resize.py

Lines changed: 13 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -20,23 +20,6 @@ class TestServersResize(base.ClientTestBase):
2020

2121
COMPUTE_API_VERSION = '2.1'
2222

23-
def _create_server(self, name, flavor):
24-
"""Boots a server with the given name and flavor and waits for it to
25-
be ACTIVE.
26-
"""
27-
params = (
28-
"%(name)s --flavor %(flavor)s --image %(image)s --poll " % {
29-
"name": self.name_generate(name),
30-
"flavor": flavor,
31-
"image": self.image.id})
32-
# check to see if we have to pass in a network id
33-
if self.multiple_networks:
34-
params += ' --nic net-id=%s' % self.network.id
35-
server_info = self.nova("boot", params=params)
36-
server_id = self._get_value_from_the_table(server_info, "id")
37-
self.addCleanup(self._cleanup_server, server_id)
38-
return server_id
39-
4023
def _pick_alternate_flavor(self):
4124
"""Given the flavor picked in the base class setup, this finds the
4225
opposite flavor to use for a resize test. For example, if m1.nano is
@@ -83,7 +66,8 @@ def test_resize_up_confirm(self):
8366
"""Tests creating a server and resizes up and confirms the resize.
8467
Compares quota before, during and after the resize.
8568
"""
86-
server_id = self._create_server('resize-up-confirm', self.flavor.name)
69+
server_id = self._create_server('resize-up-confirm',
70+
flavor=self.flavor.id).id
8771
# get the starting quota now that we've created a server
8872
starting_usage = self._get_absolute_limits()
8973
# now resize up
@@ -107,17 +91,22 @@ def _create_resize_down_flavors(self):
10791
"""Creates two flavors with different size ram but same size vcpus
10892
and disk.
10993
110-
:returns: tuple of (larger_flavor_name, smaller_flavor_name)
94+
:returns: tuple of 2 IDs which represents larger_flavor for resize and
95+
smaller flavor.
11196
"""
112-
self.nova('flavor-create', params='resize-larger-flavor auto 128 0 1')
97+
output = self.nova('flavor-create',
98+
params='resize-larger-flavor auto 128 0 1')
99+
larger_id = self._get_column_value_from_single_row_table(output, "ID")
113100
self.addCleanup(
114101
self.nova, 'flavor-delete', params='resize-larger-flavor')
115102

116-
self.nova('flavor-create', params='resize-smaller-flavor auto 64 0 1')
103+
output = self.nova('flavor-create',
104+
params='resize-smaller-flavor auto 64 0 1')
105+
smaller_id = self._get_column_value_from_single_row_table(output, "ID")
117106
self.addCleanup(
118107
self.nova, 'flavor-delete', params='resize-smaller-flavor')
119108

120-
return 'resize-larger-flavor', 'resize-smaller-flavor'
109+
return larger_id, smaller_id
121110

122111
def test_resize_down_revert(self):
123112
"""Tests creating a server and resizes down and reverts the resize.
@@ -128,7 +117,8 @@ def test_resize_down_revert(self):
128117
# create our own flavors.
129118
larger_flavor, smaller_flavor = self._create_resize_down_flavors()
130119
# Now create the server with the larger flavor.
131-
server_id = self._create_server('resize-down-revert', larger_flavor)
120+
server_id = self._create_server('resize-down-revert',
121+
flavor=larger_flavor).id
132122
# get the starting quota now that we've created a server
133123
starting_usage = self._get_absolute_limits()
134124
# now resize down

0 commit comments

Comments
 (0)