Allow snapshots in error state to be deleted.

* Fixes bug 968682

Change-Id: I37fd8e84e50b2f824f978eb7e3181ffb6ddde537
This commit is contained in:
Anthony Young
2012-03-29 16:41:21 -07:00
committed by Vishvananda Ishaya
parent b651bd568b
commit c958f38698

View File

@@ -275,7 +275,27 @@ class VolumeTestCase(test.TestCase):
volume_api.delete,
self.context,
volume)
self.volume.delete_snapshot(self.context, snapshot_id)
self.volume.delete_volume(self.context, volume['id'])
def test_can_delete_errored_snapshot(self):
"""Test snapshot can be created and deleted."""
volume = self._create_volume()
self.volume.create_volume(self.context, volume['id'])
snapshot_id = self._create_snapshot(volume['id'])
self.volume.create_snapshot(self.context, volume['id'], snapshot_id)
snapshot = db.snapshot_get(context.get_admin_context(),
snapshot_id)
volume_api = nova.volume.api.API()
snapshot['status'] = 'badstatus'
self.assertRaises(exception.InvalidVolume,
volume_api.delete_snapshot,
self.context,
snapshot)
snapshot['status'] = 'error'
self.volume.delete_snapshot(self.context, snapshot_id)
self.volume.delete_volume(self.context, volume['id'])