Merge "Handle 404 and 409 response when deleting containers"

This commit is contained in:
Jenkins 2014-11-17 00:26:25 +00:00 committed by Gerrit Code Review
commit 18575b0b8a
2 changed files with 12 additions and 5 deletions

View File

@ -125,7 +125,8 @@ class SwiftSignalHandle(resource.Resource):
except Exception as exc: except Exception as exc:
if cplugin.is_not_found(exc) or cplugin.is_conflict(exc): if cplugin.is_not_found(exc) or cplugin.is_conflict(exc):
pass pass
raise else:
raise
self.data_delete('endpoint') self.data_delete('endpoint')

View File

@ -171,8 +171,12 @@ class SwiftSignalHandleTest(common.HeatTestCase):
exc = swiftclient_exceptions.ClientException("Object DELETE failed", exc = swiftclient_exceptions.ClientException("Object DELETE failed",
http_status=404) http_status=404)
mock_swift_object.delete_object.side_effect = (None, None, None, exc) mock_swift_object.delete_object.side_effect = (None, None, None, exc)
mock_swift_object.delete_container.return_value = None exc = swiftclient_exceptions.ClientException("Container DELETE failed",
st.delete() http_status=404)
mock_swift_object.delete_container.side_effect = exc
rsrc = st.resources['test_wait_condition_handle']
scheduler.TaskRunner(rsrc.delete)()
self.assertEqual(('DELETE', 'COMPLETE'), rsrc.state)
self.assertEqual(4, mock_swift_object.delete_object.call_count) self.assertEqual(4, mock_swift_object.delete_object.call_count)
@mock.patch.object(swift.SwiftClientPlugin, '_create') @mock.patch.object(swift.SwiftClientPlugin, '_create')
@ -249,8 +253,10 @@ class SwiftSignalHandleTest(common.HeatTestCase):
mock_swift_object.delete_object.side_effect = (None, None, None, exc) mock_swift_object.delete_object.side_effect = (None, None, None, exc)
exc = swiftclient_exceptions.ClientException("Container DELETE failed", exc = swiftclient_exceptions.ClientException("Container DELETE failed",
http_status=409) http_status=409)
mock_swift_object.delete_container.return_value = exc mock_swift_object.delete_container.side_effect = exc
st.delete() rsrc = st.resources['test_wait_condition_handle']
scheduler.TaskRunner(rsrc.delete)()
self.assertEqual(('DELETE', 'COMPLETE'), rsrc.state)
self.assertEqual(4, mock_swift_object.delete_object.call_count) self.assertEqual(4, mock_swift_object.delete_object.call_count)
@mock.patch.object(swift.SwiftClientPlugin, '_create') @mock.patch.object(swift.SwiftClientPlugin, '_create')