Remove redundant checks of stack status

The main methods create/update/delete in HeatIntegrationTest class
already contains _wait_for_stack_status, so we can remove duplicate
checks in tests.
Also was added paramter enable_cleanup for stack_create method, which
allows to disable CleanUp method in tests, where we delete stack
manually.

Change-Id: I41b546d648656676ec9bc3b38940eac68f9a848d
diff --git a/functional/test_default_parameters.py b/functional/test_default_parameters.py
index 138a13e..00000fd 100644
--- a/functional/test_default_parameters.py
+++ b/functional/test_default_parameters.py
@@ -68,8 +68,6 @@
         self.client = self.orchestration_client
 
     def test_defaults(self):
-        stack_name = self._stack_rand_name()
-
         env = {'parameters': {}, 'parameter_defaults': {}}
         if self.param:
             env['parameters'] = {'length': self.param}
@@ -84,22 +82,13 @@
         else:
             nested_template = self.nested_template
 
-        self.client.stacks.create(
-            stack_name=stack_name,
+        stack_identifier = self.stack_create(
             template=self.template,
             files={'nested_random.yaml': nested_template},
-            disable_rollback=True,
-            parameters={},
             environment=env
         )
-        self.addCleanup(self.client.stacks.delete, stack_name)
 
-        stack = self.client.stacks.get(stack_name)
-        stack_identifier = '%s/%s' % (stack_name, stack.id)
-
-        self._wait_for_stack_status(stack_identifier, 'CREATE_COMPLETE')
-
-        stack = self.client.stacks.get(stack_name)
+        stack = self.client.stacks.get(stack_identifier)
         for out in stack.outputs:
             if out['output_key'] == 'random1':
                 self.assertEqual(self.expect1, len(out['output_value']))