summaryrefslogtreecommitdiff
path: root/nova/tests/functional/test_images.py
diff options
context:
space:
mode:
authorStephen Finucane <sfinucan@redhat.com>2019-11-14 11:21:54 +0000
committerStephen Finucane <sfinucan@redhat.com>2019-11-19 09:09:29 +0000
commit431237d2ee01de357bb31f36fdf7b786015d2209 (patch)
tree9041961b94594abf3dfb01df31163123b99d1572 /nova/tests/functional/test_images.py
parent0138fb1ada9957c21427c5680dc47d6527a5a703 (diff)
downloadnova-431237d2ee01de357bb31f36fdf7b786015d2209.tar.gz
functional: Make '_wait_for_state_change' behave consistently
Both 'ServersTestBase' and 'InstanceHelperMixin' provide implementations of '_wait_for_state_change' but they behave differently. The former waits for an instance to transition *from* the provided state, while the latter, somewhat more sanely, waits for the transition *to* the provided state. Switch to using the latter everywhere and make the necessary changes. Due to class hierarchies, we end up with two nearly identical implementations but these will be merged in a future change. Change-Id: I80cdc0a33ec27b1389130c22f9c3a8ff69f6b1a0 Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
Diffstat (limited to 'nova/tests/functional/test_images.py')
-rw-r--r--nova/tests/functional/test_images.py12
1 files changed, 4 insertions, 8 deletions
diff --git a/nova/tests/functional/test_images.py b/nova/tests/functional/test_images.py
index 7c3ec85748..0edb3f29cb 100644
--- a/nova/tests/functional/test_images.py
+++ b/nova/tests/functional/test_images.py
@@ -24,14 +24,13 @@ class ImagesTest(test_servers.ServersTestBase):
server = self._build_minimal_create_server_request()
created_server = self.api.post_server({"server": server})
server_id = created_server['id']
- found_server = self._wait_for_state_change(created_server, 'BUILD')
- self.assertEqual('ACTIVE', found_server['status'])
+ found_server = self._wait_for_state_change(created_server, 'ACTIVE')
# Create image
name = 'Snapshot 1'
self.api.post_server_action(
server_id, {'createImage': {'name': name}})
- self.assertEqual('ACTIVE', found_server['status'])
+
# Confirm that the image was created
images = self.api.get_images(detail=False)
image_map = {image['name']: image for image in images}
@@ -41,8 +40,7 @@ class ImagesTest(test_servers.ServersTestBase):
# Change server status from ACTIVE to SHELVED for negative test
self.flags(shelved_offload_time = -1)
self.api.post_server_action(server_id, {'shelve': {}})
- found_server = self._wait_for_state_change(found_server, 'ACTIVE')
- self.assertEqual('SHELVED', found_server['status'])
+ found_server = self._wait_for_state_change(found_server, 'SHELVED')
# Create image in SHELVED (not ACTIVE, etc.)
name = 'Snapshot 2'
@@ -51,7 +49,6 @@ class ImagesTest(test_servers.ServersTestBase):
server_id,
{'createImage': {'name': name}})
self.assertEqual(409, ex.response.status_code)
- self.assertEqual('SHELVED', found_server['status'])
# Confirm that the image was not created
images = self.api.get_images(detail=False)
@@ -71,8 +68,7 @@ class ImagesTest(test_servers.ServersTestBase):
# Create a server using the tenant user project.
server = self._build_minimal_create_server_request()
server = self.api.post_server({"server": server})
- server = self._wait_for_state_change(server, 'BUILD')
- self.assertEqual('ACTIVE', server['status'])
+ server = self._wait_for_state_change(server, 'ACTIVE')
# Create an admin API fixture with a unique project ID.
admin_api = self.useFixture(