Use helper functions stack_suspend and stack_resume

These wait for the stack state to get to complete,
this wasn't done consistently. In test_autoscaling we were
only waiting for the resource state to get to SUSPEND_COMPLETE
and this lead to a time sensitive bug.

Change-Id: Id985d833dc0b4cab1e3cb9d8f67d5d8cc94b5863
Closes-bug: #1438717
diff --git a/functional/test_remote_stack.py b/functional/test_remote_stack.py
index 7579eb0..868f24e 100644
--- a/functional/test_remote_stack.py
+++ b/functional/test_remote_stack.py
@@ -140,17 +140,5 @@
     def test_stack_suspend_resume(self):
         files = {'remote_stack.yaml': self.remote_template}
         stack_id = self.stack_create(files=files)
-        rsrc = self.client.resources.get(stack_id, 'my_stack')
-        remote_id = rsrc.physical_resource_id
-
-        # suspend stack
-        self.client.actions.suspend(stack_id)
-        self._wait_for_stack_status(stack_id, 'SUSPEND_COMPLETE')
-        rsrc = self.client.stacks.get(remote_id)
-        self.assertEqual('SUSPEND_COMPLETE', rsrc.stack_status)
-
-        # resume stack
-        self.client.actions.resume(stack_id)
-        self._wait_for_stack_status(stack_id, 'RESUME_COMPLETE')
-        rsrc = self.client.stacks.get(remote_id)
-        self.assertEqual('RESUME_COMPLETE', rsrc.stack_status)
+        self.stack_suspend(stack_id)
+        self.stack_resume(stack_id)