summaryrefslogtreecommitdiff
path: root/openstackclient/tests/functional/compute/v2/test_server.py
diff options
context:
space:
mode:
Diffstat (limited to 'openstackclient/tests/functional/compute/v2/test_server.py')
-rw-r--r--openstackclient/tests/functional/compute/v2/test_server.py117
1 files changed, 3 insertions, 114 deletions
diff --git a/openstackclient/tests/functional/compute/v2/test_server.py b/openstackclient/tests/functional/compute/v2/test_server.py
index 4d8019b2..f152de80 100644
--- a/openstackclient/tests/functional/compute/v2/test_server.py
+++ b/openstackclient/tests/functional/compute/v2/test_server.py
@@ -11,91 +11,16 @@
# under the License.
import json
-import time
import uuid
from tempest.lib import exceptions
-from openstackclient.tests.functional import base
+from openstackclient.tests.functional.compute.v2 import common
from openstackclient.tests.functional.volume.v2 import test_volume
-class ServerTests(base.TestCase):
- """Functional tests for openstack server commands."""
-
- @classmethod
- def get_flavor(cls):
- # NOTE(rtheis): Get cirros256 or m1.tiny flavors since functional
- # tests may create other flavors.
- flavors = json.loads(cls.openstack(
- "flavor list -f json "
- ))
- server_flavor = None
- for flavor in flavors:
- if flavor['Name'] in ['m1.tiny', 'cirros256']:
- server_flavor = flavor['Name']
- break
- return server_flavor
-
- @classmethod
- def get_image(cls):
- # NOTE(rtheis): Get first Cirros image since functional tests may
- # create other images. Image may be named '-uec' or
- # '-disk'.
- images = json.loads(cls.openstack(
- "image list -f json "
- ))
- server_image = None
- for image in images:
- if (image['Name'].startswith('cirros-') and
- (image['Name'].endswith('-uec') or
- image['Name'].endswith('-disk'))):
- server_image = image['Name']
- break
- return server_image
-
- @classmethod
- def get_network(cls):
- try:
- # NOTE(rtheis): Get private network since functional tests may
- # create other networks.
- cmd_output = json.loads(cls.openstack(
- 'network show private -f json'
- ))
- except exceptions.CommandFailed:
- return ''
- return '--nic net-id=' + cmd_output['id']
-
- def server_create(self, name=None):
- """Create server, with cleanup"""
- name = name or uuid.uuid4().hex
- cmd_output = json.loads(self.openstack(
- 'server create -f json ' +
- '--flavor ' + self.flavor_name + ' ' +
- '--image ' + self.image_name + ' ' +
- self.network_arg + ' ' +
- '--wait ' +
- name
- ))
- if not cmd_output:
- self.fail('Server has not been created!')
- self.addCleanup(self.server_delete, name)
- self.assertEqual(
- name,
- cmd_output["name"],
- )
- return cmd_output
-
- def server_delete(self, name):
- """Delete server by name"""
- self.openstack('server delete ' + name)
-
- def setUp(self):
- """Select common resources"""
- super(ServerTests, self).setUp()
- self.flavor_name = self.get_flavor()
- self.image_name = self.get_image()
- self.network_arg = self.get_network()
+class ServerTests(common.ComputeTestCase):
+ """Functional tests for openstack server commands"""
def test_server_list(self):
"""Test server list, set"""
@@ -480,39 +405,3 @@ class ServerTests(base.TestCase):
e.stderr)
else:
self.fail('CommandFailed should be raised.')
-
- def wait_for_status(
- self,
- name,
- expected_status='ACTIVE',
- wait=900,
- interval=10,
- ):
- """Wait until server reaches expected status."""
- # TODO(thowe): Add a server wait command to osc
- failures = ['ERROR']
- total_sleep = 0
- while total_sleep < wait:
- cmd_output = json.loads(self.openstack(
- 'server show -f json ' +
- name
- ))
- status = cmd_output['status']
- print('Waiting for {}, current status: {}'.format(
- expected_status,
- status,
- ))
- if status == expected_status:
- break
- self.assertNotIn(status, failures)
- time.sleep(interval)
- total_sleep += interval
-
- cmd_output = json.loads(self.openstack(
- 'server show -f json ' +
- name
- ))
- status = cmd_output['status']
- self.assertEqual(status, expected_status)
- # give it a little bit more time
- time.sleep(5)