Merge "Fixes lp#940532"
diff --git a/tempest/tests/test_server_actions.py b/tempest/tests/test_server_actions.py
index ab7c801..f91aa81 100644
--- a/tempest/tests/test_server_actions.py
+++ b/tempest/tests/test_server_actions.py
@@ -1,4 +1,5 @@
import base64
+import time
from nose.plugins.attrib import attr
import unittest2 as unittest
@@ -21,6 +22,8 @@
cls.image_ref_alt = cls.config.env.image_ref_alt
cls.flavor_ref = cls.config.env.flavor_ref
cls.flavor_ref_alt = cls.config.env.flavor_ref_alt
+ cls.build_interval = cls.config.nova.build_interval
+ cls.build_timeout = cls.config.nova.build_timeout
def setUp(self):
self.name = rand_name('server')
@@ -114,8 +117,18 @@
self.client.revert_resize(self.server_id)
self.client.wait_for_server_status(self.server_id, 'ACTIVE')
+ # Need to poll for the id change until lp#924371 is fixed
resp, server = self.client.get_server(self.server_id)
- self.assertEqual(self.flavor_ref, server['flavor']['id'])
+ start = int(time.time())
+
+ while server['flavor']['id'] != self.flavor_ref:
+ time.sleep(self.build_interval)
+ resp, server = self.client.get_server(self.server_id)
+
+ if int(time.time()) - start >= self.build_timeout:
+ message = 'Server %s failed to revert resize within the \
+ required time (%s s).' % (self.server_id, self.build_timeout)
+ raise exceptions.TimeoutException(message)
@attr(type='negative')
def test_reboot_nonexistant_server_soft(self):