Wait for all resources to get updated before asserting state
Change-Id: Ieec2c9d540c30c3e4da5b38026daf60de286b2ff
Closes-bug: 1417077
diff --git a/functional/test_instance_group.py b/functional/test_instance_group.py
index c76e67a..84c63cd 100644
--- a/functional/test_instance_group.py
+++ b/functional/test_instance_group.py
@@ -270,6 +270,8 @@
nested_ident = self.assert_resource_is_a_stack(stack_identifier,
'JobServerGroup')
self._assert_instance_state(nested_ident, 2, 0)
+ initial_list = [res.resource_name
+ for res in self.client.resources.list(nested_ident)]
env['parameters']['size'] = 3
files2 = {'provider.yaml': self.bad_instance_template}
@@ -283,10 +285,19 @@
)
self._wait_for_stack_status(stack_identifier, 'UPDATE_FAILED')
- # assert that there are 3 bad instances
nested_ident = self.assert_resource_is_a_stack(stack_identifier,
'JobServerGroup')
- self._assert_instance_state(nested_ident, 0, 3)
+ # assert that there are 3 bad instances
+ # 2 resources should be in update failed, and one create failed.
+ for res in self.client.resources.list(nested_ident):
+ if res.resource_name in initial_list:
+ self._wait_for_resource_status(nested_ident,
+ res.resource_name,
+ 'UPDATE_FAILED')
+ else:
+ self._wait_for_resource_status(nested_ident,
+ res.resource_name,
+ 'CREATE_FAILED')
class InstanceGroupUpdatePolicyTest(InstanceGroupTest):