_test_placement_client.py (openstack-cyborg-8.0.0) | : | _test_placement_client.py (openstack-cyborg-9.0.0) | ||
---|---|---|---|---|
skipping to change at line 22 | skipping to change at line 22 | |||
# License for the specific language governing permissions and limitations | # License for the specific language governing permissions and limitations | |||
# under the License. | # under the License. | |||
from unittest import mock | from unittest import mock | |||
from keystoneauth1 import exceptions as ks_exc | from keystoneauth1 import exceptions as ks_exc | |||
from oslo_config import cfg | from oslo_config import cfg | |||
from oslo_utils import uuidutils | from oslo_utils import uuidutils | |||
from cyborg.common import exception as c_exc | from cyborg.common import exception as c_exc | |||
from cyborg.services import report as placement_client | from cyborg.common import placement_client | |||
from cyborg.tests import base | from cyborg.tests import base | |||
class PlacementAPIClientTestCase(base.DietTestCase): | class PlacementAPIClientTestCase(base.DietTestCase): | |||
"""Test the Placement API client.""" | """Test the Placement API client.""" | |||
def setUp(self): | def setUp(self): | |||
super(PlacementAPIClientTestCase, self).setUp() | super(PlacementAPIClientTestCase, self).setUp() | |||
self.mock_load_auth_p = mock.patch( | self.mock_load_auth_p = mock.patch( | |||
'keystoneauth1.loading.load_auth_from_conf_options') | 'keystoneauth1.loading.load_auth_from_conf_options') | |||
self.mock_load_auth = self.mock_load_auth_p.start() | self.mock_load_auth = self.mock_load_auth_p.start() | |||
self.mock_request_p = mock.patch( | self.mock_request_p = mock.patch( | |||
'keystoneauth1.session.Session.request') | 'keystoneauth1.session.Session.request') | |||
self.mock_request = self.mock_request_p.start() | self.mock_request = self.mock_request_p.start() | |||
self.client = placement_client.SchedulerReportClient() | self.client = placement_client.PlacementClient() | |||
@mock.patch('keystoneauth1.session.Session') | @mock.patch('keystoneauth1.session.Session') | |||
@mock.patch('keystoneauth1.loading.load_auth_from_conf_options') | @mock.patch('keystoneauth1.loading.load_auth_from_conf_options') | |||
def test_constructor(self, load_auth_mock, ks_sess_mock): | def test_constructor(self, load_auth_mock, ks_sess_mock): | |||
placement_client.SchedulerReportClient() | ||||
placement_client.PlacementClient() | ||||
load_auth_mock.assert_called_once_with(cfg.CONF, 'placement') | load_auth_mock.assert_called_once_with(cfg.CONF, 'placement') | |||
ks_sess_mock.assert_called_once_with(auth=load_auth_mock.return_value, | ks_sess_mock.assert_called_once_with(auth=load_auth_mock.return_value, | |||
cert=None, | cert=None, | |||
collect_timing=False, | collect_timing=False, | |||
split_loggers=False, | split_loggers=False, | |||
timeout=None, | timeout=None, | |||
verify=True) | verify=True) | |||
def test_create_resource_provider(self): | @mock.patch('cyborg.common.placement_client.PlacementClient.post') | |||
expected_payload = 'fake_resource_provider' | def test_create_resource_provider(self, mock_post): | |||
self.client.create_resource_provider(expected_payload) | rp_uuid = uuidutils.generate_uuid() | |||
e_filter = {'region_name': mock.ANY, 'service_type': 'placement'} | self.client._create_resource_provider(self.context, rp_uuid, 'test') | |||
expected_url = '/resource_providers' | expected_url = '/resource_providers' | |||
self.mock_request.assert_called_once_with(expected_url, 'POST', | mock_post.assert_called_once_with( | |||
endpoint_filter=e_filter, | expected_url, {'uuid': rp_uuid, 'name': 'test'}, | |||
json=expected_payload) | version='1.20', global_request_id=mock.ANY) | |||
def test_delete_resource_provider(self): | @mock.patch('cyborg.common.placement_client.PlacementClient.delete') | |||
def test_delete_resource_provider(self, mock_delete): | ||||
rp_uuid = uuidutils.generate_uuid() | rp_uuid = uuidutils.generate_uuid() | |||
self.client.delete_resource_provider(rp_uuid) | self.client.delete_provider(rp_uuid) | |||
e_filter = {'region_name': mock.ANY, 'service_type': 'placement'} | expected_url = '/resource_providers/' + rp_uuid | |||
expected_url = '/resource_providers/%s' % rp_uuid | mock_delete.assert_called_once_with( | |||
self.mock_request.assert_called_once_with(expected_url, 'DELETE', | expected_url, global_request_id=mock.ANY) | |||
endpoint_filter=e_filter) | ||||
def test_create_inventory(self): | def test_create_inventory(self): | |||
expected_payload = 'fake_inventory' | expected_payload = 'fake_inventory' | |||
rp_uuid = uuidutils.generate_uuid() | rp_uuid = uuidutils.generate_uuid() | |||
e_filter = {'region_name': mock.ANY, 'service_type': 'placement'} | e_filter = {'region_name': mock.ANY, 'service_type': 'placement'} | |||
self.client.create_inventory(rp_uuid, expected_payload) | self.client.create_inventory(rp_uuid, expected_payload) | |||
expected_url = '/resource_providers/%s/inventories' % rp_uuid | expected_url = '/resource_providers/%s/inventories' % rp_uuid | |||
self.mock_request.assert_called_once_with(expected_url, 'POST', | self.mock_request.assert_called_once_with(expected_url, 'POST', | |||
endpoint_filter=e_filter, | endpoint_filter=e_filter, | |||
json=expected_payload) | json=expected_payload) | |||
End of changes. 8 change blocks. | ||||
16 lines changed or deleted | 16 lines changed or added |