summaryrefslogtreecommitdiff
path: root/openstackclient/tests/unit/volume/v1/test_volume.py
diff options
context:
space:
mode:
authorAkihiro Motoki <amotoki@gmail.com>2017-05-15 07:55:41 +0000
committerDean Troyer <dtroyer@gmail.com>2019-06-22 14:53:28 -0500
commit1af3056e301807e4474cde49eef3e00931ab08c2 (patch)
tree4da6432ad7d2eaa7b37bf87f9cf439fad418035f /openstackclient/tests/unit/volume/v1/test_volume.py
parent1a21f02bc7507120f3a4fe2af12ba7a27b002b44 (diff)
downloadpython-openstackclient-1af3056e301807e4474cde49eef3e00931ab08c2.tar.gz
Use cliff formattable columns in volume v1 commands
Partial-Bug: #1687955 Partially implement blueprint osc-formattable-columns Change-Id: Ib4c5798171e32a8ddc08a37ee1d416e366a71d76
Diffstat (limited to 'openstackclient/tests/unit/volume/v1/test_volume.py')
-rw-r--r--openstackclient/tests/unit/volume/v1/test_volume.py79
1 files changed, 53 insertions, 26 deletions
diff --git a/openstackclient/tests/unit/volume/v1/test_volume.py b/openstackclient/tests/unit/volume/v1/test_volume.py
index eee5acd7..c4154555 100644
--- a/openstackclient/tests/unit/volume/v1/test_volume.py
+++ b/openstackclient/tests/unit/volume/v1/test_volume.py
@@ -17,6 +17,8 @@ import argparse
import mock
from mock import call
+
+from osc_lib.cli import format_columns
from osc_lib import exceptions
from osc_lib import utils
@@ -88,7 +90,7 @@ class TestVolumeCreate(TestVolume):
self.new_volume.display_description,
self.new_volume.id,
self.new_volume.display_name,
- utils.format_dict(self.new_volume.metadata),
+ format_columns.DictColumn(self.new_volume.metadata),
self.new_volume.size,
self.new_volume.snapshot_id,
self.new_volume.status,
@@ -134,7 +136,7 @@ class TestVolumeCreate(TestVolume):
None,
)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
def test_volume_create_options(self):
arglist = [
@@ -178,7 +180,7 @@ class TestVolumeCreate(TestVolume):
)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
def test_volume_create_user_project_id(self):
# Return a project
@@ -225,7 +227,7 @@ class TestVolumeCreate(TestVolume):
)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
def test_volume_create_user_project_name(self):
# Return a project
@@ -272,7 +274,7 @@ class TestVolumeCreate(TestVolume):
)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
def test_volume_create_properties(self):
arglist = [
@@ -313,7 +315,7 @@ class TestVolumeCreate(TestVolume):
)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
def test_volume_create_image_id(self):
image = image_fakes.FakeImage.create_one_image()
@@ -356,7 +358,7 @@ class TestVolumeCreate(TestVolume):
)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
def test_volume_create_image_name(self):
image = image_fakes.FakeImage.create_one_image()
@@ -399,7 +401,7 @@ class TestVolumeCreate(TestVolume):
)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
def test_volume_create_with_source(self):
self.volumes_mock.get.return_value = self.new_volume
@@ -429,7 +431,7 @@ class TestVolumeCreate(TestVolume):
None,
)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
def test_volume_create_with_bootable_and_readonly(self):
arglist = [
@@ -467,7 +469,7 @@ class TestVolumeCreate(TestVolume):
)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
self.volumes_mock.set_bootable.assert_called_with(
self.new_volume.id, True)
self.volumes_mock.update_readonly_flag.assert_called_with(
@@ -509,7 +511,7 @@ class TestVolumeCreate(TestVolume):
)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
self.volumes_mock.set_bootable.assert_called_with(
self.new_volume.id, False)
self.volumes_mock.update_readonly_flag.assert_called_with(
@@ -561,7 +563,7 @@ class TestVolumeCreate(TestVolume):
self.assertEqual(2, mock_error.call_count)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
self.volumes_mock.set_bootable.assert_called_with(
self.new_volume.id, True)
self.volumes_mock.update_readonly_flag.assert_called_with(
@@ -732,16 +734,13 @@ class TestVolumeList(TestVolume):
'Size',
'Attached to',
)
- server = _volume.attachments[0]['server_id']
- device = _volume.attachments[0]['device']
- msg = 'Attached to %s on %s ' % (server, device)
datalist = (
(
_volume.id,
_volume.display_name,
_volume.status,
_volume.size,
- msg,
+ volume.AttachmentsColumn(_volume.attachments),
),
)
@@ -767,7 +766,7 @@ class TestVolumeList(TestVolume):
columns, data = self.cmd.take_action(parsed_args)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, tuple(data))
+ self.assertListItemEqual(self.datalist, tuple(data))
def test_volume_list_name(self):
arglist = [
@@ -784,7 +783,7 @@ class TestVolumeList(TestVolume):
columns, data = self.cmd.take_action(parsed_args)
self.assertEqual(self.columns, tuple(columns))
- self.assertEqual(self.datalist, tuple(data))
+ self.assertListItemEqual(self.datalist, tuple(data))
def test_volume_list_status(self):
arglist = [
@@ -801,7 +800,7 @@ class TestVolumeList(TestVolume):
columns, data = self.cmd.take_action(parsed_args)
self.assertEqual(self.columns, tuple(columns))
- self.assertEqual(self.datalist, tuple(data))
+ self.assertListItemEqual(self.datalist, tuple(data))
def test_volume_list_all_projects(self):
arglist = [
@@ -818,7 +817,7 @@ class TestVolumeList(TestVolume):
columns, data = self.cmd.take_action(parsed_args)
self.assertEqual(self.columns, tuple(columns))
- self.assertEqual(self.datalist, tuple(data))
+ self.assertListItemEqual(self.datalist, tuple(data))
def test_volume_list_long(self):
arglist = [
@@ -855,10 +854,10 @@ class TestVolumeList(TestVolume):
self._volume.size,
self._volume.volume_type,
self._volume.bootable,
- self.msg,
- utils.format_dict(self._volume.metadata),
+ volume.AttachmentsColumn(self._volume.attachments),
+ format_columns.DictColumn(self._volume.metadata),
), )
- self.assertEqual(datalist, tuple(data))
+ self.assertListItemEqual(datalist, tuple(data))
def test_volume_list_with_limit(self):
arglist = [
@@ -883,7 +882,7 @@ class TestVolumeList(TestVolume):
'all_tenants': False, }
)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, tuple(data))
+ self.assertListItemEqual(self.datalist, tuple(data))
def test_volume_list_negative_limit(self):
arglist = [
@@ -1251,7 +1250,7 @@ class TestVolumeShow(TestVolume):
self._volume.display_description,
self._volume.id,
self._volume.display_name,
- utils.format_dict(self._volume.metadata),
+ format_columns.DictColumn(self._volume.metadata),
self._volume.size,
self._volume.snapshot_id,
self._volume.status,
@@ -1274,7 +1273,7 @@ class TestVolumeShow(TestVolume):
self.volumes_mock.get.assert_called_with(self._volume.id)
self.assertEqual(self.columns, columns)
- self.assertEqual(self.datalist, data)
+ self.assertItemEqual(self.datalist, data)
def test_volume_show_backward_compatibility(self):
arglist = [
@@ -1339,3 +1338,31 @@ class TestVolumeUnset(TestVolume):
self._volume.id, ['myprop']
)
self.assertIsNone(result)
+
+
+class TestColumns(TestVolume):
+
+ def test_attachments_column_without_server_cache(self):
+ _volume = volume_fakes.FakeVolume.create_one_volume()
+ server_id = _volume.attachments[0]['server_id']
+ device = _volume.attachments[0]['device']
+
+ col = volume.AttachmentsColumn(_volume.attachments, {})
+ self.assertEqual('Attached to %s on %s ' % (server_id, device),
+ col.human_readable())
+ self.assertEqual(_volume.attachments, col.machine_readable())
+
+ def test_attachments_column_with_server_cache(self):
+ _volume = volume_fakes.FakeVolume.create_one_volume()
+
+ server_id = _volume.attachments[0]['server_id']
+ device = _volume.attachments[0]['device']
+ fake_server = mock.Mock()
+ fake_server.name = 'fake-server-name'
+ server_cache = {server_id: fake_server}
+
+ col = volume.AttachmentsColumn(_volume.attachments, server_cache)
+ self.assertEqual(
+ 'Attached to %s on %s ' % ('fake-server-name', device),
+ col.human_readable())
+ self.assertEqual(_volume.attachments, col.machine_readable())