summaryrefslogtreecommitdiff
path: root/openstackclient/tests/unit
diff options
context:
space:
mode:
authorRui Chen <chenrui.momo@gmail.com>2017-01-20 14:37:14 +0800
committerRui Chen <chenrui.momo@gmail.com>2017-05-26 11:37:09 +0800
commit6aceca218af7d1d2c708fde48f1a5f2b798bc421 (patch)
treef61ad5a7cfd347a2f94646e2a1b305932e13dee1 /openstackclient/tests/unit
parentb78153aec4f050e64ee8ec9c930ae673bb3ecd47 (diff)
downloadpython-openstackclient-6aceca218af7d1d2c708fde48f1a5f2b798bc421.tar.gz
Replace "Display Name" by "Name" in volume list
Current "volume list --name" command use "display_name" as search_opts to send to cinder API, and show the result table with "Display Name" column title in osc, cinder list API support "name" as search opts too, and there is "name" attribute in volume response body, so we can replace all "Display Name" by "Name" in order to keep "volume list" command consistent with other commands, like: server list, network list and so on, only use "Name" attribute for all objects. Support a mapping for volume list -c "Display Name" (Volume v1 and v2) and volume create/show -c "display_name" (Volume v1) for minimal backward compatibility until R release. Change-Id: I120be0118e7bb30093b4237c5eeb69a9eedef077 Closes-Bug: #1657956 Depends-On: I1fb62219b092346ea380099811cbd082cae5bafe
Diffstat (limited to 'openstackclient/tests/unit')
-rw-r--r--openstackclient/tests/unit/volume/v1/test_volume.py84
-rw-r--r--openstackclient/tests/unit/volume/v2/test_volume.py60
2 files changed, 126 insertions, 18 deletions
diff --git a/openstackclient/tests/unit/volume/v1/test_volume.py b/openstackclient/tests/unit/volume/v1/test_volume.py
index d46a7ba9..6b793773 100644
--- a/openstackclient/tests/unit/volume/v1/test_volume.py
+++ b/openstackclient/tests/unit/volume/v1/test_volume.py
@@ -68,8 +68,8 @@ class TestVolumeCreate(TestVolume):
'bootable',
'created_at',
'display_description',
- 'display_name',
'id',
+ 'name',
'properties',
'size',
'snapshot_id',
@@ -86,8 +86,8 @@ class TestVolumeCreate(TestVolume):
self.new_volume.bootable,
self.new_volume.created_at,
self.new_volume.display_description,
- self.new_volume.display_name,
self.new_volume.id,
+ self.new_volume.display_name,
utils.format_dict(self.new_volume.metadata),
self.new_volume.size,
self.new_volume.snapshot_id,
@@ -598,6 +598,38 @@ class TestVolumeCreate(TestVolume):
self.assertRaises(tests_utils.ParserException, self.check_parser,
self.cmd, arglist, verifylist)
+ def test_volume_create_backward_compatibility(self):
+ arglist = [
+ '-c', 'display_name',
+ '--size', str(self.new_volume.size),
+ self.new_volume.display_name,
+ ]
+ verifylist = [
+ ('columns', ['display_name']),
+ ('size', self.new_volume.size),
+ ('name', self.new_volume.display_name),
+ ]
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
+
+ columns, data = self.cmd.take_action(parsed_args)
+
+ self.volumes_mock.create.assert_called_with(
+ self.new_volume.size,
+ None,
+ None,
+ self.new_volume.display_name,
+ None,
+ None,
+ None,
+ None,
+ None,
+ None,
+ None,
+ )
+ self.assertIn('display_name', columns)
+ self.assertNotIn('name', columns)
+ self.assertIn(self.new_volume.display_name, data)
+
class TestVolumeDelete(TestVolume):
@@ -695,7 +727,7 @@ class TestVolumeList(TestVolume):
_volume = volume_fakes.FakeVolume.create_one_volume()
columns = (
'ID',
- 'Display Name',
+ 'Name',
'Status',
'Size',
'Attached to',
@@ -806,7 +838,7 @@ class TestVolumeList(TestVolume):
collist = (
'ID',
- 'Display Name',
+ 'Name',
'Status',
'Size',
'Type',
@@ -863,6 +895,27 @@ class TestVolumeList(TestVolume):
self.assertRaises(argparse.ArgumentTypeError, self.check_parser,
self.cmd, arglist, verifylist)
+ def test_volume_list_backward_compatibility(self):
+ arglist = [
+ '-c', 'Display Name',
+ ]
+ verifylist = [
+ ('columns', ['Display Name']),
+ ('long', False),
+ ('all_projects', False),
+ ('name', None),
+ ('status', None),
+ ('limit', None),
+ ]
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
+
+ columns, data = self.cmd.take_action(parsed_args)
+
+ self.assertIn('Display Name', columns)
+ self.assertNotIn('Name', columns)
+ for each_volume in data:
+ self.assertIn(self._volume.display_name, each_volume)
+
class TestVolumeMigrate(TestVolume):
@@ -1178,8 +1231,8 @@ class TestVolumeShow(TestVolume):
'bootable',
'created_at',
'display_description',
- 'display_name',
'id',
+ 'name',
'properties',
'size',
'snapshot_id',
@@ -1196,8 +1249,8 @@ class TestVolumeShow(TestVolume):
self._volume.bootable,
self._volume.created_at,
self._volume.display_description,
- self._volume.display_name,
self._volume.id,
+ self._volume.display_name,
utils.format_dict(self._volume.metadata),
self._volume.size,
self._volume.snapshot_id,
@@ -1223,6 +1276,25 @@ class TestVolumeShow(TestVolume):
self.assertEqual(self.columns, columns)
self.assertEqual(self.datalist, data)
+ def test_volume_show_backward_compatibility(self):
+ arglist = [
+ '-c', 'display_name',
+ self._volume.id,
+ ]
+ verifylist = [
+ ('columns', ['display_name']),
+ ('volume', self._volume.id),
+ ]
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
+
+ columns, data = self.cmd.take_action(parsed_args)
+
+ self.volumes_mock.get.assert_called_with(self._volume.id)
+
+ self.assertIn('display_name', columns)
+ self.assertNotIn('name', columns)
+ self.assertIn(self._volume.display_name, data)
+
class TestVolumeUnset(TestVolume):
diff --git a/openstackclient/tests/unit/volume/v2/test_volume.py b/openstackclient/tests/unit/volume/v2/test_volume.py
index fbe719f3..71e4ecea 100644
--- a/openstackclient/tests/unit/volume/v2/test_volume.py
+++ b/openstackclient/tests/unit/volume/v2/test_volume.py
@@ -790,7 +790,7 @@ class TestVolumeList(TestVolume):
columns = [
'ID',
- 'Display Name',
+ 'Name',
'Status',
'Size',
'Attached to',
@@ -827,7 +827,7 @@ class TestVolumeList(TestVolume):
'all_tenants': False,
'project_id': None,
'user_id': None,
- 'display_name': None,
+ 'name': None,
'status': None,
}
self.volumes_mock.list.assert_called_once_with(
@@ -870,7 +870,7 @@ class TestVolumeList(TestVolume):
'all_tenants': True,
'project_id': self.project.id,
'user_id': None,
- 'display_name': None,
+ 'name': None,
'status': None,
}
self.volumes_mock.list.assert_called_once_with(
@@ -915,7 +915,7 @@ class TestVolumeList(TestVolume):
'all_tenants': True,
'project_id': self.project.id,
'user_id': None,
- 'display_name': None,
+ 'name': None,
'status': None,
}
self.volumes_mock.list.assert_called_once_with(
@@ -958,7 +958,7 @@ class TestVolumeList(TestVolume):
'all_tenants': False,
'project_id': None,
'user_id': self.user.id,
- 'display_name': None,
+ 'name': None,
'status': None,
}
self.volumes_mock.list.assert_called_once_with(
@@ -1002,7 +1002,7 @@ class TestVolumeList(TestVolume):
'all_tenants': False,
'project_id': None,
'user_id': self.user.id,
- 'display_name': None,
+ 'name': None,
'status': None,
}
self.volumes_mock.list.assert_called_once_with(
@@ -1045,7 +1045,7 @@ class TestVolumeList(TestVolume):
'all_tenants': False,
'project_id': None,
'user_id': None,
- 'display_name': self.mock_volume.name,
+ 'name': self.mock_volume.name,
'status': None,
}
self.volumes_mock.list.assert_called_once_with(
@@ -1088,7 +1088,7 @@ class TestVolumeList(TestVolume):
'all_tenants': False,
'project_id': None,
'user_id': None,
- 'display_name': None,
+ 'name': None,
'status': self.mock_volume.status,
}
self.volumes_mock.list.assert_called_once_with(
@@ -1131,7 +1131,7 @@ class TestVolumeList(TestVolume):
'all_tenants': True,
'project_id': None,
'user_id': None,
- 'display_name': None,
+ 'name': None,
'status': None,
}
self.volumes_mock.list.assert_called_once_with(
@@ -1175,7 +1175,7 @@ class TestVolumeList(TestVolume):
'all_tenants': False,
'project_id': None,
'user_id': None,
- 'display_name': None,
+ 'name': None,
'status': None,
}
self.volumes_mock.list.assert_called_once_with(
@@ -1186,7 +1186,7 @@ class TestVolumeList(TestVolume):
collist = [
'ID',
- 'Display Name',
+ 'Name',
'Status',
'Size',
'Type',
@@ -1248,7 +1248,7 @@ class TestVolumeList(TestVolume):
'status': None,
'project_id': None,
'user_id': None,
- 'display_name': None,
+ 'name': None,
'all_tenants': False, }
)
self.assertEqual(datalist, tuple(data))
@@ -1263,6 +1263,42 @@ class TestVolumeList(TestVolume):
self.assertRaises(argparse.ArgumentTypeError, self.check_parser,
self.cmd, arglist, verifylist)
+ def test_volume_list_backward_compatibility(self):
+ arglist = [
+ '-c', 'Display Name',
+ ]
+ verifylist = [
+ ('columns', ['Display Name']),
+ ('long', False),
+ ('all_projects', False),
+ ('name', None),
+ ('status', None),
+ ('marker', None),
+ ('limit', None),
+ ]
+ parsed_args = self.check_parser(self.cmd, arglist, verifylist)
+
+ columns, data = self.cmd.take_action(parsed_args)
+
+ search_opts = {
+ 'all_tenants': False,
+ 'project_id': None,
+ 'user_id': None,
+ 'name': None,
+ 'status': None,
+ }
+ self.volumes_mock.list.assert_called_once_with(
+ search_opts=search_opts,
+ marker=None,
+ limit=None,
+ )
+
+ self.assertIn('Display Name', columns)
+ self.assertNotIn('Name', columns)
+
+ for each_volume in data:
+ self.assertIn(self.mock_volume.name, each_volume)
+
class TestVolumeMigrate(TestVolume):