diff options
| author | Zuul <zuul@review.openstack.org> | 2018-07-20 03:32:53 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2018-07-20 03:32:53 +0000 |
| commit | 9b1d6247be5b09b2c019fdfbb3091d253e395689 (patch) | |
| tree | b5d96c2cd51ed3da078df5f1477cad7b8ee735a5 /cinderclient/tests/unit | |
| parent | f69bfcbd7ffbdcd45e36768b760e53bd1c1c32d3 (diff) | |
| parent | a554faa6530fa0bb70430572869a6a2555783912 (diff) | |
| download | python-cinderclient-9b1d6247be5b09b2c019fdfbb3091d253e395689.tar.gz | |
Merge "Transfer snapshots with volumes"
Diffstat (limited to 'cinderclient/tests/unit')
| -rw-r--r-- | cinderclient/tests/unit/v3/fakes.py | 39 | ||||
| -rw-r--r-- | cinderclient/tests/unit/v3/test_shell.py | 9 | ||||
| -rw-r--r-- | cinderclient/tests/unit/v3/test_volume_transfers.py | 67 |
3 files changed, 115 insertions, 0 deletions
diff --git a/cinderclient/tests/unit/v3/fakes.py b/cinderclient/tests/unit/v3/fakes.py index f1ef3fd..b552f5e 100644 --- a/cinderclient/tests/unit/v3/fakes.py +++ b/cinderclient/tests/unit/v3/fakes.py @@ -630,6 +630,45 @@ class FakeHTTPClient(fake_v2.FakeHTTPClient): def get_resource_filters(self, **kw): return 200, {}, {'resource_filters': []} + def get_volume_transfers_detail(self, **kw): + base_uri = 'http://localhost:8776' + tenant_id = '0fa851f6668144cf9cd8c8419c1646c1' + transfer1 = '5678' + transfer2 = 'f625ec3e-13dd-4498-a22a-50afd534cc41' + return (200, {}, + {'transfers': [ + fake_v2._stub_transfer_full(transfer1, base_uri, + tenant_id), + fake_v2._stub_transfer_full(transfer2, base_uri, + tenant_id)]}) + + def get_volume_transfers_5678(self, **kw): + base_uri = 'http://localhost:8776' + tenant_id = '0fa851f6668144cf9cd8c8419c1646c1' + transfer1 = '5678' + return (200, {}, + {'transfer': + fake_v2._stub_transfer_full(transfer1, base_uri, tenant_id)}) + + def delete_volume_transfers_5678(self, **kw): + return (202, {}, None) + + def post_volume_transfers(self, **kw): + base_uri = 'http://localhost:8776' + tenant_id = '0fa851f6668144cf9cd8c8419c1646c1' + transfer1 = '5678' + return (202, {}, + {'transfer': fake_v2._stub_transfer(transfer1, base_uri, + tenant_id)}) + + def post_volume_transfers_5678_accept(self, **kw): + base_uri = 'http://localhost:8776' + tenant_id = '0fa851f6668144cf9cd8c8419c1646c1' + transfer1 = '5678' + return (200, {}, + {'transfer': fake_v2._stub_transfer(transfer1, base_uri, + tenant_id)}) + def fake_request_get(): versions = {'versions': [{'id': 'v1.0', diff --git a/cinderclient/tests/unit/v3/test_shell.py b/cinderclient/tests/unit/v3/test_shell.py index cdf1f36..1811397 100644 --- a/cinderclient/tests/unit/v3/test_shell.py +++ b/cinderclient/tests/unit/v3/test_shell.py @@ -1342,3 +1342,12 @@ class ShellTest(utils.TestCase): 'service_id': 1} self.assert_called('POST', '/workers/cleanup', body=expected) + + def test_create_transfer(self): + self.run_command('--os-volume-api-version 3.55 transfer-create ' + '--no-snapshots 1234') + expected = {'transfer': {'volume_id': 1234, + 'name': None, + 'no_snapshots': True + }} + self.assert_called('POST', '/volume-transfers', body=expected) diff --git a/cinderclient/tests/unit/v3/test_volume_transfers.py b/cinderclient/tests/unit/v3/test_volume_transfers.py new file mode 100644 index 0000000..4eab0b2 --- /dev/null +++ b/cinderclient/tests/unit/v3/test_volume_transfers.py @@ -0,0 +1,67 @@ +# Copyright 2018 FiberHome Telecommunication Technologies CO.,LTD +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +from cinderclient.tests.unit import utils +from cinderclient.tests.unit.v3 import fakes + + +cs = fakes.FakeClient() + + +class VolumeTransfersTest(utils.TestCase): + + def test_create(self): + vol = cs.transfers.create('1234') + cs.assert_called('POST', '/volume-transfers', + body={'transfer': {'volume_id': '1234', 'name': None, + 'no_snapshots': False}}) + self._assert_request_id(vol) + + def test_create_without_snapshots(self): + vol = cs.transfers.create('1234', no_snapshots=True) + cs.assert_called('POST', '/volume-transfers', + body={'transfer': {'volume_id': '1234', 'name': None, + 'no_snapshots': True}}) + self._assert_request_id(vol) + + def test_get(self): + transfer_id = '5678' + vol = cs.transfers.get(transfer_id) + cs.assert_called('GET', '/volume-transfers/%s' % transfer_id) + self._assert_request_id(vol) + + def test_list(self): + lst = cs.transfers.list() + cs.assert_called('GET', '/volume-transfers/detail') + self._assert_request_id(lst) + + def test_delete(self): + b = cs.transfers.list()[0] + vol = b.delete() + cs.assert_called('DELETE', '/volume-transfers/5678') + self._assert_request_id(vol) + vol = cs.transfers.delete('5678') + self._assert_request_id(vol) + cs.assert_called('DELETE', '/volume-transfers/5678') + vol = cs.transfers.delete(b) + cs.assert_called('DELETE', '/volume-transfers/5678') + self._assert_request_id(vol) + + def test_accept(self): + transfer_id = '5678' + auth_key = '12345' + vol = cs.transfers.accept(transfer_id, auth_key) + cs.assert_called('POST', '/volume-transfers/%s/accept' % transfer_id) + self._assert_request_id(vol) |
