Add loggable resource client
This patch creates the network v2.0 loggable-resource client. https://docs.openstack.org/api-ref/network/v2/index.html#list-loggable-resources Signed-off by: Soniya Vyas<svyas@redhat.com> Change-Id: I37b9397834fbb7f4ebf540dc5f8aece356ddf749
This commit is contained in:
parent
a45828bf92
commit
5a3de3e498
@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
features:
|
||||||
|
- |
|
||||||
|
Lists neutron's Loggable resources API service clients are available in
|
||||||
|
``tempest/lib/services/network/loggable_resource_client.py`` module.
|
@ -85,6 +85,7 @@ class BaseNetworkTest(tempest.test.BaseTestCase):
|
|||||||
cls.service_providers_client = cls.os_primary.service_providers_client
|
cls.service_providers_client = cls.os_primary.service_providers_client
|
||||||
cls.tags_client = cls.os_primary.tags_client
|
cls.tags_client = cls.os_primary.tags_client
|
||||||
cls.log_resource_client = cls.os_primary.log_resource_client
|
cls.log_resource_client = cls.os_primary.log_resource_client
|
||||||
|
cls.loggable_resource_client = cls.os_primary.loggable_resource_client
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def resource_setup(cls):
|
def resource_setup(cls):
|
||||||
|
@ -74,6 +74,7 @@ class Manager(clients.ServiceClients):
|
|||||||
self.segments_client = self.network.SegmentsClient()
|
self.segments_client = self.network.SegmentsClient()
|
||||||
self.trunks_client = self.network.TrunksClient()
|
self.trunks_client = self.network.TrunksClient()
|
||||||
self.log_resource_client = self.network.LogResourceClient()
|
self.log_resource_client = self.network.LogResourceClient()
|
||||||
|
self.loggable_resource_client = self.network.LoggableResourceClient()
|
||||||
|
|
||||||
def _set_image_clients(self):
|
def _set_image_clients(self):
|
||||||
if CONF.service_available.glance:
|
if CONF.service_available.glance:
|
||||||
|
@ -16,6 +16,8 @@ from tempest.lib.services.network.agents_client import AgentsClient
|
|||||||
from tempest.lib.services.network.extensions_client import ExtensionsClient
|
from tempest.lib.services.network.extensions_client import ExtensionsClient
|
||||||
from tempest.lib.services.network.floating_ips_client import FloatingIPsClient
|
from tempest.lib.services.network.floating_ips_client import FloatingIPsClient
|
||||||
from tempest.lib.services.network.log_resource_client import LogResourceClient
|
from tempest.lib.services.network.log_resource_client import LogResourceClient
|
||||||
|
from tempest.lib.services.network.loggable_resource_client import \
|
||||||
|
LoggableResourceClient
|
||||||
from tempest.lib.services.network.metering_label_rules_client import \
|
from tempest.lib.services.network.metering_label_rules_client import \
|
||||||
MeteringLabelRulesClient
|
MeteringLabelRulesClient
|
||||||
from tempest.lib.services.network.metering_labels_client import \
|
from tempest.lib.services.network.metering_labels_client import \
|
||||||
@ -46,4 +48,5 @@ __all__ = ['AgentsClient', 'ExtensionsClient', 'FloatingIPsClient',
|
|||||||
'QosClient', 'QosMinimumBandwidthRulesClient', 'QuotasClient',
|
'QosClient', 'QosMinimumBandwidthRulesClient', 'QuotasClient',
|
||||||
'RoutersClient', 'SecurityGroupRulesClient', 'SecurityGroupsClient',
|
'RoutersClient', 'SecurityGroupRulesClient', 'SecurityGroupsClient',
|
||||||
'SegmentsClient', 'ServiceProvidersClient', 'SubnetpoolsClient',
|
'SegmentsClient', 'ServiceProvidersClient', 'SubnetpoolsClient',
|
||||||
'SubnetsClient', 'TagsClient', 'TrunksClient', 'LogResourceClient']
|
'SubnetsClient', 'TagsClient', 'TrunksClient', 'LogResourceClient',
|
||||||
|
'LoggableResourceClient']
|
||||||
|
29
tempest/lib/services/network/loggable_resource_client.py
Normal file
29
tempest/lib/services/network/loggable_resource_client.py
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
# Copyright 2021 Red Hat, Inc.
|
||||||
|
# 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 tempest.lib.services.network import base
|
||||||
|
|
||||||
|
|
||||||
|
class LoggableResourceClient(base.BaseNetworkClient):
|
||||||
|
|
||||||
|
def list_loggable_resources(self, **filters):
|
||||||
|
"""List Loggable resources.
|
||||||
|
|
||||||
|
For a full list of available parameters, please refer to the official
|
||||||
|
API reference:
|
||||||
|
https://docs.openstack.org/api-ref/network/v2/index.html#list-loggable-resources
|
||||||
|
"""
|
||||||
|
uri = '/log/loggable-resources'
|
||||||
|
return self.list_resources(uri, **filters)
|
@ -0,0 +1,53 @@
|
|||||||
|
# Copyright 2021 Red Hat, Inc.
|
||||||
|
# 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 tempest.lib.services.network import loggable_resource_client
|
||||||
|
from tempest.tests.lib import fake_auth_provider
|
||||||
|
from tempest.tests.lib.services import base
|
||||||
|
|
||||||
|
|
||||||
|
class TestLoggableResourceClient(base.BaseServiceTest):
|
||||||
|
|
||||||
|
FAKE_LOGS = {
|
||||||
|
"loggable_resources": [
|
||||||
|
{
|
||||||
|
"type": "security_group"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "none"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
super(TestLoggableResourceClient, self).setUp()
|
||||||
|
fake_auth = fake_auth_provider.FakeAuthProvider()
|
||||||
|
self.loggable_resource_client = \
|
||||||
|
loggable_resource_client.LoggableResourceClient(
|
||||||
|
fake_auth, "network", "regionOne")
|
||||||
|
|
||||||
|
def _test_list_loggable_resources(self, bytes_body=False):
|
||||||
|
self.check_service_client_function(
|
||||||
|
self.loggable_resource_client.list_loggable_resources,
|
||||||
|
"tempest.lib.common.rest_client.RestClient.get",
|
||||||
|
self.FAKE_LOGS,
|
||||||
|
bytes_body,
|
||||||
|
200)
|
||||||
|
|
||||||
|
def test_list_loggable_resources_with_str_body(self):
|
||||||
|
self._test_list_loggable_resources()
|
||||||
|
|
||||||
|
def test_list_loggable_resources_with_bytes_body(self):
|
||||||
|
self._test_list_loggable_resources(bytes_body=True)
|
Loading…
Reference in New Issue
Block a user