Merge "Add volume dependency test coverage"

This commit is contained in:
Zuul 2024-03-13 23:32:41 +00:00 committed by Gerrit Code Review
commit a259e8d43e
1 changed files with 56 additions and 0 deletions

View File

@ -63,3 +63,59 @@ class VolumeDependencyTests(base.BaseVolumeTest):
snapshot_source_volume['id'])
self.volumes_client.delete_volume(source_volume['id'])
self.volumes_client.wait_for_resource_deletion(source_volume['id'])
def _delete_vol_and_wait(self, vol_id):
self.volumes_client.delete_volume(vol_id)
self.volumes_client.wait_for_resource_deletion(vol_id)
def _delete_snap_and_wait(self, snap_id):
self.snapshots_client.delete_snapshot(snap_id)
self.snapshots_client.wait_for_resource_deletion(snap_id)
@decorators.idempotent_id('f8278e5c-50ff-4a1d-8670-3ca0866d411a')
def test_delete_dep_chain(self):
"""Test a complex chain of volume and snapshot dependency deletion."""
volume_1 = self.create_volume()['id']
snapshot_of_vol_1 = self.create_snapshot(volume_1)['id']
volume_2_args = {'snapshot_id': snapshot_of_vol_1}
volume_2 = self.create_volume(**volume_2_args)['id']
snapshot_of_vol_2 = self.create_snapshot(volume_2)['id']
volume_3_args = {'snapshot_id': snapshot_of_vol_2}
volume_3 = self.create_volume(**volume_3_args)['id']
volume_4_args = {'source_volid': volume_3}
volume_4 = self.create_volume(**volume_4_args)['id']
self._delete_snap_and_wait(snapshot_of_vol_1)
self._delete_snap_and_wait(snapshot_of_vol_2)
self._delete_vol_and_wait(volume_3)
self._delete_vol_and_wait(volume_1)
self._delete_vol_and_wait(volume_2)
self._delete_vol_and_wait(volume_4)
@decorators.idempotent_id('63447ef8-e667-4796-ba66-1b9b883af1f1')
def test_delete_dep_chain_2(self):
"""Test a different chain of volume/snapshot dependency deletion."""
volume_1 = self.create_volume()['id']
snapshot_of_vol_1 = self.create_snapshot(volume_1)['id']
volume_2_args = {'snapshot_id': snapshot_of_vol_1}
volume_2 = self.create_volume(**volume_2_args)['id']
snapshot_of_vol_2 = self.create_snapshot(volume_2)['id']
volume_3_args = {'snapshot_id': snapshot_of_vol_2}
volume_3 = self.create_volume(**volume_3_args)['id']
self._delete_snap_and_wait(snapshot_of_vol_1)
self._delete_snap_and_wait(snapshot_of_vol_2)
self._delete_vol_and_wait(volume_1)
self._delete_vol_and_wait(volume_2)
self._delete_vol_and_wait(volume_3)