heat tests : Add utility decorator for deleting stacks

Add decorator function which allows test functions to be wrapped
such that if they create a stack (and it is stored in the testcase
class as self.stack) it is always deleted on test exit, regardless
of test success/failure

Change-Id: Ibde9a2cee08448e3f24c6b7efbfe756a01f9eccc
Signed-off-by: Steven Hardy <shardy@redhat.com>
heat tests : test_waitcondition move cleanup out of teardown

Move stack delete and mox VerifyAll out of the teardown function
so if either fails the stubs are unset, meaning all subsequent
tests won't fail due to being unable to setup their stubs
stack delete is now performed via the stack_delete_after decorator

Change-Id: I636af84dd66ba4923f068c56ec13e7990d8edc03
Signed-off-by: Steven Hardy <shardy@redhat.com>
heat tests : test_api_cfn_v1 move verify out of teardown

Move VerifyAll out of the teardown function so if it fails
the stubs are still unset

Change-Id: I92132236f013d9d9dfeb82ba77ecfadc2e07f671
Signed-off-by: Steven Hardy <shardy@redhat.com>
heat engine : WaitCondition add Handle property validation

Add validation to the Handle property for WaitCondition, so
we check that the identifier in the provided URL maps to
a WaitConditionHandle resource in the same stack as the
WaitCondition

fixes bug 1100754

Change-Id: I44c8f52435016fad5a35183472d2b0df26c1915d