summaryrefslogtreecommitdiff
path: root/openstackclient/tests/volume
diff options
context:
space:
mode:
authorxiexs <xiexs@cn.fujitsu.com>2015-11-27 11:44:38 -0500
committerxiexs <xiexs@cn.fujitsu.com>2015-12-02 16:02:10 +0800
commit6e747629ad2eab980671ebabb5b66f4acdfc0e8d (patch)
treead3b7d778e91207cf4dbc9a912299d467ac168b1 /openstackclient/tests/volume
parentcb73e781e0b8d6a8104e3434dcf727f2e2dd4a9e (diff)
downloadpython-openstackclient-6e747629ad2eab980671ebabb5b66f4acdfc0e8d.tar.gz
Add multi deletion testcase for openstack volume delete
Change-Id: Id8e6e8311e46e4c8644d41d773aeb27416ca6a7e
Diffstat (limited to 'openstackclient/tests/volume')
-rw-r--r--openstackclient/tests/volume/v2/test_volume.py40
1 files changed, 32 insertions, 8 deletions
diff --git a/openstackclient/tests/volume/v2/test_volume.py b/openstackclient/tests/volume/v2/test_volume.py
index 70324b6e..50826c31 100644
--- a/openstackclient/tests/volume/v2/test_volume.py
+++ b/openstackclient/tests/volume/v2/test_volume.py
@@ -14,6 +14,8 @@
import copy
+from mock import call
+
from openstackclient.tests import fakes
from openstackclient.tests.identity.v3 import fakes as identity_fakes
from openstackclient.tests.volume.v2 import fakes as volume_fakes
@@ -36,6 +38,14 @@ class TestVolume(volume_fakes.TestVolume):
self.images_mock = self.app.client_manager.image.images
self.images_mock.reset_mock()
+ def setup_volumes_mock(self, count):
+ volumes = volume_fakes.FakeVolume.create_volumes(count=count)
+
+ self.volumes_mock.get = volume_fakes.FakeVolume.get_volumes(
+ volumes,
+ 0)
+ return volumes
+
class TestVolumeCreate(TestVolume):
def setUp(self):
@@ -888,24 +898,38 @@ class TestVolumeDelete(TestVolume):
def setUp(self):
super(TestVolumeDelete, self).setUp()
- self.volumes_mock.get.return_value = fakes.FakeResource(
- None,
- copy.deepcopy(volume_fakes.VOLUME),
- loaded=True)
self.volumes_mock.delete.return_value = None
# Get the command object to mock
self.cmd = volume.DeleteVolume(self.app, None)
- def test_volume_delete(self):
+ def test_volume_delete_one_volume(self):
+ volumes = self.setup_volumes_mock(count=1)
+
arglist = [
- volume_fakes.volume_id
+ volumes[0].id
]
verifylist = [
- ("volumes", [volume_fakes.volume_id])
+ ("volumes", [volumes[0].id])
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
- self.volumes_mock.delete.assert_called_with(volume_fakes.volume_id)
+ self.volumes_mock.delete.assert_called_with(volumes[0].id)
+
+ def test_volume_delete_multi_volumes(self):
+ volumes = self.setup_volumes_mock(count=3)
+
+ arglist = [v.id for v in volumes]
+ verifylist = [
+ ('volumes', arglist),
+ ]
+
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
+
+ self.cmd.take_action(parsed_args)
+
+ calls = [call(v.id) for v in volumes]
+
+ self.volumes_mock.delete.assert_has_calls(calls)