diff options
| author | chengkunye <chengkun@unitedstack.com> | 2015-07-17 17:05:23 +0800 |
|---|---|---|
| committer | Steve Martinelli <stevemar@ca.ibm.com> | 2015-07-20 12:59:57 -0700 |
| commit | 659abf492825b71b99e6f4be58447d6f393e33ef (patch) | |
| tree | fd85de22134c562489db66ae666c971e25b3c04a /openstackclient/tests/volume | |
| parent | 11c9695e5ef127d0c99e2af610e462f5b1af4933 (diff) | |
| download | python-openstackclient-659abf492825b71b99e6f4be58447d6f393e33ef.tar.gz | |
Add create and list for volume type v2
Volume API v2 is missing create and list features.
implements bp: volume-v2
Change-Id: I34a1ae440e9620b1c65546f4f43b369c8661250d
Diffstat (limited to 'openstackclient/tests/volume')
| -rw-r--r-- | openstackclient/tests/volume/v2/test_type.py | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/openstackclient/tests/volume/v2/test_type.py b/openstackclient/tests/volume/v2/test_type.py index 6cc988b2..39634966 100644 --- a/openstackclient/tests/volume/v2/test_type.py +++ b/openstackclient/tests/volume/v2/test_type.py @@ -28,6 +28,135 @@ class TestType(volume_fakes.TestVolume): self.types_mock.reset_mock() +class TestTypeCreate(TestType): + + def setUp(self): + super(TestTypeCreate, self).setUp() + + self.types_mock.create.return_value = fakes.FakeResource( + None, + copy.deepcopy(volume_fakes.TYPE), + loaded=True, + ) + # Get the command object to test + self.cmd = volume_type.CreateVolumeType(self.app, None) + + def test_type_create_public(self): + arglist = [ + volume_fakes.type_name, + "--description", volume_fakes.type_description, + "--public" + ] + verifylist = [ + ("name", volume_fakes.type_name), + ("description", volume_fakes.type_description), + ("public", True), + ("private", False), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + columns, data = self.cmd.take_action(parsed_args) + self.types_mock.create.assert_called_with( + volume_fakes.type_name, + description=volume_fakes.type_description, + public=True, + ) + + collist = ( + 'description', + 'id', + 'name', + ) + self.assertEqual(collist, columns) + datalist = ( + volume_fakes.type_description, + volume_fakes.type_id, + volume_fakes.type_name, + ) + self.assertEqual(datalist, data) + + def test_type_create_private(self): + arglist = [ + volume_fakes.type_name, + "--description", volume_fakes.type_description, + "--private" + ] + verifylist = [ + ("name", volume_fakes.type_name), + ("description", volume_fakes.type_description), + ("public", False), + ("private", True), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + columns, data = self.cmd.take_action(parsed_args) + self.types_mock.create.assert_called_with( + volume_fakes.type_name, + description=volume_fakes.type_description, + private=True, + ) + + collist = ( + 'description', + 'id', + 'name', + ) + self.assertEqual(collist, columns) + datalist = ( + volume_fakes.type_description, + volume_fakes.type_id, + volume_fakes.type_name, + ) + self.assertEqual(datalist, data) + + +class TestTypeList(TestType): + def setUp(self): + super(TestTypeList, self).setUp() + + self.types_mock.list.return_value = [ + fakes.FakeResource( + None, + copy.deepcopy(volume_fakes.TYPE), + loaded=True + ) + ] + # get the command to test + self.cmd = volume_type.ListVolumeType(self.app, None) + + def test_type_list_without_options(self): + arglist = [] + verifylist = [ + ("long", False) + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + columns, data = self.cmd.take_action(parsed_args) + collist = ["ID", "Name"] + self.assertEqual(collist, columns) + datalist = (( + volume_fakes.type_id, + volume_fakes.type_name, + ),) + self.assertEqual(datalist, tuple(data)) + + def test_type_list_with_options(self): + arglist = ["--long"] + verifylist = [("long", True)] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + columns, data = self.cmd.take_action(parsed_args) + collist = ["ID", "Name", "Description", "Properties"] + self.assertEqual(collist, columns) + datalist = (( + volume_fakes.type_id, + volume_fakes.type_name, + volume_fakes.type_description, + "foo='bar'" + ),) + self.assertEqual(datalist, tuple(data)) + + class TestTypeShow(TestType): def setUp(self): super(TestTypeShow, self).setUp() |
