Files
python-openstackclient/openstackclient/tests/unit/volume/test_find_resource.py
Stephen Finucane a7e2f31ecc volume: Remove negotiation for v1 API
Change Ibe1cd6461d2cb78826467078aa17272f171746aa removed support for the
v1 volume API. We should have removed this check at the same time.

We also remove some god-awful monkey patching that references v1
cinderclient but in practice modified all clients.

Change-Id: I3727fd9238df966b3bc59812c5efcf3398da5c72
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2025-12-12 10:32:12 +00:00

77 lines
2.3 KiB
Python

# Copyright 2013 Nebula Inc.
#
# 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 unittest import mock
from cinderclient.v3 import volume_snapshots
from cinderclient.v3 import volumes
from osc_lib import exceptions
from osc_lib import utils
from openstackclient.tests.unit import utils as test_utils
ID = '1after909'
NAME = 'PhilSpector'
class TestFindResourceVolumes(test_utils.TestCase):
def setUp(self):
super().setUp()
api = mock.Mock()
api.client = mock.Mock()
api.client.get = mock.Mock()
resp = mock.Mock()
body = {"volumes": [{"id": ID, 'name': NAME}]}
api.client.get.side_effect = [Exception("Not found"), (resp, body)]
self.manager = volumes.VolumeManager(api)
def test_find(self):
result = utils.find_resource(self.manager, NAME)
self.assertEqual(ID, result.id)
self.assertEqual(NAME, result.name)
def test_not_find(self):
self.assertRaises(
exceptions.CommandError,
utils.find_resource,
self.manager,
'GeorgeMartin',
)
class TestFindResourceVolumeSnapshots(test_utils.TestCase):
def setUp(self):
super().setUp()
api = mock.Mock()
api.client = mock.Mock()
api.client.get = mock.Mock()
resp = mock.Mock()
body = {"snapshots": [{"id": ID, 'name': NAME}]}
api.client.get.side_effect = [Exception("Not found"), (resp, body)]
self.manager = volume_snapshots.SnapshotManager(api)
def test_find(self):
result = utils.find_resource(self.manager, NAME)
self.assertEqual(ID, result.id)
self.assertEqual(NAME, result.name)
def test_not_find(self):
self.assertRaises(
exceptions.CommandError,
utils.find_resource,
self.manager,
'GeorgeMartin',
)