diff options
| author | Stephen Finucane <sfinucan@redhat.com> | 2021-07-13 20:29:43 +0100 |
|---|---|---|
| committer | Stephen Finucane <sfinucan@redhat.com> | 2021-07-13 20:33:35 +0100 |
| commit | a821d6b7c57c7684a990ee39b6b93d5085f25a70 (patch) | |
| tree | 7f161f2b6140920938cb48f8aac7e68ace55991b /openstackclient/tests/unit/volume | |
| parent | 4891bb38208fdcd1a2ae60e47b056841e14fbdf7 (diff) | |
| download | python-openstackclient-a821d6b7c57c7684a990ee39b6b93d5085f25a70.tar.gz | |
volume: Add 'volume transfer request create --(no-)snapshots' option
This closes a gap with cinderclient's 'transfer-create' command.
Change-Id: I7386a7be15c0e3ee87abbcfc2275ba8524c10ff8
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
Story: 2009054
Task: 42831
Diffstat (limited to 'openstackclient/tests/unit/volume')
| -rw-r--r-- | openstackclient/tests/unit/volume/v2/test_volume_transfer_request.py (renamed from openstackclient/tests/unit/volume/v2/test_transfer_request.py) | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/openstackclient/tests/unit/volume/v2/test_transfer_request.py b/openstackclient/tests/unit/volume/v2/test_volume_transfer_request.py index c9dce3ca..1a1f220f 100644 --- a/openstackclient/tests/unit/volume/v2/test_transfer_request.py +++ b/openstackclient/tests/unit/volume/v2/test_volume_transfer_request.py @@ -15,6 +15,7 @@ from unittest import mock from unittest.mock import call +from cinderclient import api_versions from osc_lib import exceptions from osc_lib import utils @@ -172,6 +173,51 @@ class TestTransferCreate(TestTransfer): self.assertEqual(self.columns, columns) self.assertEqual(self.data, data) + def test_transfer_create_with_no_snapshots(self): + self.app.client_manager.volume.api_version = \ + api_versions.APIVersion('3.55') + + arglist = [ + '--no-snapshots', + self.volume.id, + ] + verifylist = [ + ('name', None), + ('snapshots', False), + ('volume', self.volume.id), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + columns, data = self.cmd.take_action(parsed_args) + + self.transfer_mock.create.assert_called_once_with( + self.volume.id, None, no_snapshots=True) + self.assertEqual(self.columns, columns) + self.assertEqual(self.data, data) + + def test_transfer_create_pre_v355(self): + self.app.client_manager.volume.api_version = \ + api_versions.APIVersion('3.54') + + arglist = [ + '--no-snapshots', + self.volume.id, + ] + verifylist = [ + ('name', None), + ('snapshots', False), + ('volume', self.volume.id), + ] + parsed_args = self.check_parser(self.cmd, arglist, verifylist) + + exc = self.assertRaises( + exceptions.CommandError, + self.cmd.take_action, + parsed_args) + self.assertIn( + '--os-volume-api-version 3.55 or greater is required', + str(exc)) + class TestTransferDelete(TestTransfer): |
