Add find support to BaseProxy

All other actions on the Resource class that are used in Proxy
subclasses had been exposed in BaseProxy except for find. This change
implements a simple `_find` in the base, which brings it in line with
how everything else is done, and is the last piece to get knowledge of
`self.session` out of proxy calls.

Additionally, while moving the proxy implementations to all be the same,
it's a chance to unify the find tests in the proxy. This change
eliminates the need for there to have been two test methods and makes
the tests look like how they're done for every other action.

Change-Id: Ibea01bed4e4ecd76d96021f78db0116012448984
Closes-Bug: 1517149
This commit is contained in:
Brian Curtin
2015-11-18 19:55:37 -06:00
parent e950fd2d88
commit 1ea6243af5
23 changed files with 221 additions and 261 deletions

View File

@@ -58,8 +58,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.cluster.v1.profile.Profile` object
or None
"""
return profile.Profile.find(self.session, value,
ignore_missing=ignore_missing)
return self._find(profile.Profile, value,
ignore_missing=ignore_missing)
def get_profile(self, value):
"""Get a single profile.
@@ -149,8 +149,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.cluster.v1.cluster.Cluster` object
or None
"""
return cluster.Cluster.find(self.session, value,
ignore_missing=ignore_missing)
return self._find(cluster.Cluster, value,
ignore_missing=ignore_missing)
def get_cluster(self, value):
"""Get a single cluster.
@@ -234,8 +234,7 @@ class Proxy(proxy.BaseProxy):
:param value: The name or ID of a node.
:returns: One :class:`~openstack.cluster.v1.node.Node` object or None.
"""
return node.Node.find(self.session, value,
ignore_missing=ignore_missing)
return self._find(node.Node, value, ignore_missing=ignore_missing)
def get_node(self, value):
"""Get a single node.
@@ -326,8 +325,7 @@ class Proxy(proxy.BaseProxy):
:returns: A policy object or None.
:rtype: :class:`~openstack.cluster.v1.policy.Policy`
"""
return policy.Policy.find(self.session, value,
ignore_missing=ignore_missing)
return self._find(policy.Policy, value, ignore_missing=ignore_missing)
def get_policy(self, value):
"""Get a single policy.

View File

@@ -36,8 +36,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.compute.v2.extension.Extension` or
None
"""
return extension.Extension.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(extension.Extension, name_or_id,
ignore_missing=ignore_missing)
def extensions(self, **query):
"""Retrieve a generator of extensions
@@ -61,8 +61,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.compute.v2.flavor.Flavor` or None
"""
return flavor.Flavor.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(flavor.Flavor, name_or_id,
ignore_missing=ignore_missing)
def create_flavor(self, **attrs):
"""Create a new flavor from attributes
@@ -157,8 +157,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.compute.v2.image.Image` or None
"""
return image.Image.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(image.Image, name_or_id,
ignore_missing=ignore_missing)
def get_image(self, value):
"""Get a single image
@@ -237,8 +237,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.compute.v2.keypair.Keypair` or None
"""
return keypair.Keypair.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(keypair.Keypair, name_or_id,
ignore_missing=ignore_missing)
def keypairs(self, **query):
"""Return a generator of keypairs
@@ -312,8 +312,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.compute.v2.server.Server` or None
"""
return server.Server.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(server.Server, name_or_id,
ignore_missing=ignore_missing)
def get_server(self, value):
"""Get a single server
@@ -432,8 +432,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.compute.v2.server_interface.
ServerInterface` or None
"""
return server_interface.ServerInterface.find(
self.session, name_or_id, ignore_missing=ignore_missing)
return self._find(server_interface.ServerInterface,
name_or_id, ignore_missing=ignore_missing)
def get_server_interface(self, value):
"""Get a single server interface
@@ -487,8 +487,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.compute.v2.server_ip.ServerIP` or None
"""
return server_ip.ServerIP.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(server_ip.ServerIP, name_or_id,
ignore_missing=ignore_missing)
def server_ips(self, **query):
"""Return a generator of server IPs

View File

@@ -57,8 +57,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.database.v1.database.Database` or None
"""
return database.Database.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(database.Database, name_or_id,
ignore_missing=ignore_missing)
def databases(self, **query):
"""Return a generator of databases
@@ -95,8 +95,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.database.v1.flavor.Flavor` or None
"""
return flavor.Flavor.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(flavor.Flavor, name_or_id,
ignore_missing=ignore_missing)
def get_flavor(self, value):
"""Get a single flavor
@@ -159,8 +159,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.database.v1.instance.Instance` or None
"""
return instance.Instance.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(instance.Instance, name_or_id,
ignore_missing=ignore_missing)
def get_instance(self, value):
"""Get a single instance
@@ -238,8 +238,7 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.database.v1.user.User` or None
"""
return user.User.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(user.User, name_or_id, ignore_missing=ignore_missing)
def users(self, **query):
"""Return a generator of users

View File

@@ -56,8 +56,7 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.identity.v2.role.Role` or None
"""
return role.Role.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(role.Role, name_or_id, ignore_missing=ignore_missing)
def get_role(self, value):
"""Get a single role
@@ -133,8 +132,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.identity.v2.tenant.Tenant` or None
"""
return tenant.Tenant.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(tenant.Tenant, name_or_id,
ignore_missing=ignore_missing)
def get_tenant(self, value):
"""Get a single tenant
@@ -210,8 +209,7 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.identity.v2.user.User` or None
"""
return user.User.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(user.User, name_or_id, ignore_missing=ignore_missing)
def get_user(self, value):
"""Get a single user

View File

@@ -65,8 +65,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.identity.v3.credential.Credential`
or None
"""
return credential.Credential.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(credential.Credential, name_or_id,
ignore_missing=ignore_missing)
def get_credential(self, value):
"""Get a single credential
@@ -145,8 +145,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.identity.v3.domain.Domain` or None
"""
return domain.Domain.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(domain.Domain, name_or_id,
ignore_missing=ignore_missing)
def get_domain(self, value):
"""Get a single domain
@@ -223,8 +223,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.identity.v3.endpoint.Endpoint` or None
"""
return endpoint.Endpoint.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(endpoint.Endpoint, name_or_id,
ignore_missing=ignore_missing)
def get_endpoint(self, value):
"""Get a single endpoint
@@ -303,8 +303,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.identity.v3.group.Group` or None
"""
return group.Group.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(group.Group, name_or_id,
ignore_missing=ignore_missing)
def get_group(self, value):
"""Get a single group
@@ -382,8 +382,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.identity.v3.policy.Policy` or None
"""
return policy.Policy.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(policy.Policy, name_or_id,
ignore_missing=ignore_missing)
def get_policy(self, value):
"""Get a single policy
@@ -460,8 +460,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.identity.v3.project.Project` or None
"""
return project.Project.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(project.Project, name_or_id,
ignore_missing=ignore_missing)
def get_project(self, value):
"""Get a single project
@@ -538,8 +538,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.identity.v3.service.Service` or None
"""
return service.Service.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(service.Service, name_or_id,
ignore_missing=ignore_missing)
def get_service(self, value):
"""Get a single service
@@ -616,8 +616,7 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.identity.v3.user.User` or None
"""
return user.User.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(user.User, name_or_id, ignore_missing=ignore_missing)
def get_user(self, value):
"""Get a single user
@@ -694,8 +693,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.identity.v3.trust.Trust` or None
"""
return trust.Trust.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(trust.Trust, name_or_id,
ignore_missing=ignore_missing)
def get_trust(self, value):
"""Get a single trust
@@ -772,8 +771,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent region.
:returns: One :class:`~openstack.identity.v3.region.Region` or None
"""
return region.Region.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(region.Region, name_or_id,
ignore_missing=ignore_missing)
def get_region(self, value):
"""Get a single region

View File

@@ -54,8 +54,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.image.v1.image.Image` or None
"""
return image.Image.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(image.Image, name_or_id,
ignore_missing=ignore_missing)
def get_image(self, value):
"""Get a single image

View File

@@ -63,8 +63,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.image.v2.image.Image` or None
"""
return image.Image.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(image.Image, name_or_id,
ignore_missing=ignore_missing)
def get_image(self, value):
"""Get a single image
@@ -140,8 +140,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.image.v2.member.Member` or None
"""
return member.Member.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(member.Member, name_or_id,
ignore_missing=ignore_missing)
def get_member(self, value):
"""Get a single member

View File

@@ -58,8 +58,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.key_management.v1.container.Container`
or None
"""
return container.Container.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(container.Container, name_or_id,
ignore_missing=ignore_missing)
def get_container(self, value):
"""Get a single container
@@ -138,8 +138,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.key_management.v1.order.Order` or None
"""
return order.Order.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(order.Order, name_or_id,
ignore_missing=ignore_missing)
def get_order(self, value):
"""Get a single order
@@ -219,8 +219,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.key_management.v1.secret.Secret` or
None
"""
return secret.Secret.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(secret.Secret, name_or_id,
ignore_missing=ignore_missing)
def get_secret(self, value):
"""Get a single secret

View File

@@ -44,8 +44,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.network.v2.extension.Extension`
or None
"""
return extension.Extension.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(extension.Extension, name_or_id,
ignore_missing=ignore_missing)
def extensions(self, **query):
"""Return a generator of extensions
@@ -106,8 +106,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.network.v2.floating_ip.FloatingIP`
or None
"""
return floating_ip.FloatingIP.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(floating_ip.FloatingIP, name_or_id,
ignore_missing=ignore_missing)
def get_ip(self, value):
"""Get a single floating ip
@@ -188,8 +188,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.network.v2.health_monitor.
HealthMonitor` or None
"""
return health_monitor.HealthMonitor.find(
self.session, name_or_id, ignore_missing=ignore_missing)
return self._find(health_monitor.HealthMonitor,
name_or_id, ignore_missing=ignore_missing)
def get_health_monitor(self, value):
"""Get a single health monitor
@@ -269,8 +269,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.network.v2.listener.Listener` or None
"""
return listener.Listener.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(listener.Listener, name_or_id,
ignore_missing=ignore_missing)
def get_listener(self, value):
"""Get a single listener
@@ -351,8 +351,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.network.v2.load_balancer.LoadBalancer`
or None
"""
return load_balancer.LoadBalancer.find(
self.session, name_or_id, ignore_missing=ignore_missing)
return self._find(load_balancer.LoadBalancer, name_or_id,
ignore_missing=ignore_missing)
def get_load_balancer(self, value):
"""Get a single load balancer
@@ -433,8 +433,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.network.v2.metering_label.
MeteringLabel` or None
"""
return metering_label.MeteringLabel.find(
self.session, name_or_id, ignore_missing=ignore_missing)
return self._find(metering_label.MeteringLabel, name_or_id,
ignore_missing=ignore_missing)
def get_metering_label(self, value):
"""Get a single metering label
@@ -519,8 +519,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.network.v2.metering_label_rule.
MeteringLabelRule` or None
"""
return metering_label_rule.MeteringLabelRule.find(
self.session, name_or_id, ignore_missing=ignore_missing)
return self._find(metering_label_rule.MeteringLabelRule, name_or_id,
ignore_missing=ignore_missing)
def get_metering_label_rule(self, value):
"""Get a single metering label rule
@@ -604,8 +604,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.network.v2.network.Network` or None
"""
return network.Network.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(network.Network, name_or_id,
ignore_missing=ignore_missing)
def get_network(self, value):
"""Get a single network
@@ -681,8 +681,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.network.v2.pool.Pool` or None
"""
return _pool.Pool.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(_pool.Pool, name_or_id,
ignore_missing=ignore_missing)
def get_pool(self, value):
"""Get a single pool
@@ -770,9 +770,9 @@ class Proxy(proxy.BaseProxy):
or None
"""
pool = _pool.Pool.from_id(pool)
return pool_member.PoolMember.find(self.session, member,
path_args={'pool_id': pool.id},
ignore_missing=ignore_missing)
return self._find(pool_member.PoolMember, member,
path_args={'pool_id': pool.id},
ignore_missing=ignore_missing)
def get_pool_member(self, member, pool):
"""Get a single pool member
@@ -861,8 +861,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.network.v2.port.Port` or None
"""
return port.Port.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(port.Port, name_or_id,
ignore_missing=ignore_missing)
def get_port(self, value):
"""Get a single port
@@ -966,8 +966,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.network.v2.router.Router` or None
"""
return router.Router.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(router.Router, name_or_id,
ignore_missing=ignore_missing)
def get_router(self, value):
"""Get a single router
@@ -1052,8 +1052,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.network.v2.security_group.
SecurityGroup` or None
"""
return security_group.SecurityGroup.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(security_group.SecurityGroup, name_or_id,
ignore_missing=ignore_missing)
def get_security_group(self, value):
"""Get a single security group
@@ -1162,8 +1162,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.network.v2.security_group_rule.
SecurityGroupRule` or None
"""
return security_group_rule.SecurityGroupRule.find(
self.session, name_or_id, ignore_missing=ignore_missing)
return self._find(security_group_rule.SecurityGroupRule,
name_or_id, ignore_missing=ignore_missing)
def get_security_group_rule(self, value):
"""Get a single security group rule
@@ -1230,8 +1230,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.network.v2.subnet.Subnet` or None
"""
return subnet.Subnet.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(subnet.Subnet, name_or_id,
ignore_missing=ignore_missing)
def get_subnet(self, value):
"""Get a single subnet
@@ -1310,8 +1310,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.network.v2.vpn_service.VPNService`
or None
"""
return vpn_service.VPNService.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(vpn_service.VPNService, name_or_id,
ignore_missing=ignore_missing)
def get_vpn_service(self, value):
"""Get a single vpn service

View File

@@ -41,8 +41,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.orchestration.v1.stack.Stack` or None
"""
return stack.Stack.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(stack.Stack, name_or_id,
ignore_missing=ignore_missing)
def stacks(self, **query):
"""Return a generator of stacks

View File

@@ -74,6 +74,23 @@ class BaseProxy(object):
return res
def _find(self, resource_type, name_or_id, path_args=None,
ignore_missing=True):
"""Find a resource
:param name_or_id: The name or ID of a resource to find.
:param bool ignore_missing: When set to ``False``
:class:`~openstack.exceptions.ResourceNotFound` will be
raised when the resource does not exist.
When set to ``True``, None will be returned when
attempting to find a nonexistent resource.
:returns: An instance of ``resource_type`` or None
"""
return resource_type.find(self.session, name_or_id,
path_args=path_args,
ignore_missing=ignore_missing)
@_check_resource(strict=False)
def _delete(self, resource_type, value, path_args=None,
ignore_missing=True):

View File

@@ -60,8 +60,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.telemetry.v2.alarm.Alarm` or None
"""
return alarm.Alarm.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(alarm.Alarm, name_or_id,
ignore_missing=ignore_missing)
def get_alarm(self, value):
"""Get a single alarm
@@ -111,8 +111,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.telemetry.v2.alarm_change.AlarmChange`
or None
"""
return alarm_change.AlarmChange.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(alarm_change.AlarmChange, name_or_id,
ignore_missing=ignore_missing)
def alarm_changes(self, value, **query):
"""Return a generator of alarm changes
@@ -140,8 +140,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.telemetry.v2.capability.Capability`
or None
"""
return capability.Capability.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(capability.Capability, name_or_id,
ignore_missing=ignore_missing)
def capabilities(self, **query):
"""Return a generator of capabilities
@@ -165,8 +165,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.telemetry.v2.meter.Meter` or None
"""
return meter.Meter.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(meter.Meter, name_or_id,
ignore_missing=ignore_missing)
def meters(self, **query):
"""Return a generator of meters
@@ -191,8 +191,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.telemetry.v2.resource.Resource` or
None
"""
return resource.Resource.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(resource.Resource, name_or_id,
ignore_missing=ignore_missing)
def get_resource(self, value):
"""Get a single resource
@@ -241,8 +241,8 @@ class Proxy(proxy.BaseProxy):
attempting to find a nonexistent resource.
:returns: One :class:`~openstack.telemetry.v2.sample.Sample` or None
"""
return sample.Sample.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(sample.Sample, name_or_id,
ignore_missing=ignore_missing)
def samples(self, value, **query):
"""Return a generator of samples
@@ -270,8 +270,8 @@ class Proxy(proxy.BaseProxy):
:returns: One :class:`~openstack.telemetry.v2.statistics.Statistics`
or None
"""
return statistics.Statistics.find(self.session, name_or_id,
ignore_missing=ignore_missing)
return self._find(statistics.Statistics, name_or_id,
ignore_missing=ignore_missing)
def statistics(self, value, **query):
"""Return a generator of statistics

View File

@@ -34,8 +34,7 @@ class TestClusterProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_profile, profile.Profile, True)
def test_profile_find(self):
self.verify_find('openstack.cluster.v1.profile.Profile.find',
self.proxy.find_profile)
self.verify_find(self.proxy.find_profile, profile.Profile)
def test_profile_get(self):
self.verify_get(self.proxy.get_profile, profile.Profile)
@@ -59,8 +58,7 @@ class TestClusterProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_cluster, cluster.Cluster, True)
def test_cluster_find(self):
self.verify_find('openstack.cluster.v1.cluster.Cluster.find',
self.proxy.find_cluster)
self.verify_find(self.proxy.find_cluster, cluster.Cluster)
def test_cluster_get(self):
self.verify_get(self.proxy.get_cluster, cluster.Cluster)
@@ -84,8 +82,7 @@ class TestClusterProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_node, node.Node, True)
def test_node_find(self):
self.verify_find('openstack.cluster.v1.node.Node.find',
self.proxy.find_node)
self.verify_find(self.proxy.find_node, node.Node)
def test_node_get(self):
self.verify_get(self.proxy.get_node, node.Node)
@@ -109,8 +106,7 @@ class TestClusterProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_policy, policy.Policy, True)
def test_policy_find(self):
self.verify_find('openstack.cluster.v1.policy.Policy.find',
self.proxy.find_policy)
self.verify_find(self.proxy.find_policy, policy.Policy)
def test_policy_get(self):
self.verify_get(self.proxy.get_policy, policy.Policy)

View File

@@ -28,8 +28,7 @@ class TestComputeProxy(test_proxy_base.TestProxyBase):
self.proxy = _proxy.Proxy(self.session)
def test_extension_find(self):
self.verify_find('openstack.compute.v2.extension.Extension.find',
self.proxy.find_extension)
self.verify_find(self.proxy.find_extension, extension.Extension)
def test_extensions(self):
self.verify_list(self.proxy.extensions, extension.Extension,
@@ -45,8 +44,7 @@ class TestComputeProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_flavor, flavor.Flavor, True)
def test_flavor_find(self):
self.verify_find('openstack.compute.v2.flavor.Flavor.find',
self.proxy.find_flavor)
self.verify_find(self.proxy.find_flavor, flavor.Flavor)
def test_flavor_get(self):
self.verify_get(self.proxy.get_flavor, flavor.Flavor)
@@ -73,8 +71,7 @@ class TestComputeProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_image, image.Image, True)
def test_image_find(self):
self.verify_find('openstack.compute.v2.image.Image.find',
self.proxy.find_image)
self.verify_find(self.proxy.find_image, image.Image)
def test_image_get(self):
self.verify_get(self.proxy.get_image, image.Image)
@@ -101,8 +98,7 @@ class TestComputeProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_keypair, keypair.Keypair, True)
def test_keypair_find(self):
self.verify_find('openstack.compute.v2.keypair.Keypair.find',
self.proxy.find_keypair)
self.verify_find(self.proxy.find_keypair, keypair.Keypair)
def test_keypair_get(self):
self.verify_get(self.proxy.get_keypair, keypair.Keypair)
@@ -130,9 +126,8 @@ class TestComputeProxy(test_proxy_base.TestProxyBase):
server_interface.ServerInterface, True)
def test_server_interface_find(self):
self.verify_find(
'openstack.compute.v2.server_interface.ServerInterface.find',
self.proxy.find_server_interface)
self.verify_find(self.proxy.find_server_interface,
server_interface.ServerInterface)
def test_server_interface_get(self):
self.verify_get(self.proxy.get_server_interface,
@@ -148,8 +143,7 @@ class TestComputeProxy(test_proxy_base.TestProxyBase):
server_interface.ServerInterface)
def test_server_ip_find(self):
self.verify_find('openstack.compute.v2.server_ip.ServerIP.find',
self.proxy.find_server_ip)
self.verify_find(self.proxy.find_server_ip, server_ip.ServerIP)
def test_server_ips(self):
self.verify_list(self.proxy.server_ips, server_ip.ServerIP,
@@ -165,8 +159,7 @@ class TestComputeProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_server, server.Server, True)
def test_server_find(self):
self.verify_find('openstack.compute.v2.server.Server.find',
self.proxy.find_server)
self.verify_find(self.proxy.find_server, server.Server)
def test_server_get(self):
self.verify_get(self.proxy.get_server, server.Server)

View File

@@ -35,8 +35,7 @@ class TestDatabaseProxy(test_proxy_base.TestProxyBase):
database.Database, True)
def test_database_find(self):
self.verify_find('openstack.database.v1.database.Database.find',
self.proxy.find_database)
self.verify_find(self.proxy.find_database, database.Database)
def test_databases(self):
self.verify_list(self.proxy.databases, database.Database,
@@ -46,8 +45,7 @@ class TestDatabaseProxy(test_proxy_base.TestProxyBase):
self.verify_get(self.proxy.get_database, database.Database)
def test_flavor_find(self):
self.verify_find('openstack.database.v1.flavor.Flavor.find',
self.proxy.find_flavor)
self.verify_find(self.proxy.find_flavor, flavor.Flavor)
def test_flavor_get(self):
self.verify_get(self.proxy.get_flavor, flavor.Flavor)
@@ -68,8 +66,7 @@ class TestDatabaseProxy(test_proxy_base.TestProxyBase):
instance.Instance, True)
def test_instance_find(self):
self.verify_find('openstack.database.v1.instance.Instance.find',
self.proxy.find_instance)
self.verify_find(self.proxy.find_instance, instance.Instance)
def test_instance_get(self):
self.verify_get(self.proxy.get_instance, instance.Instance)
@@ -91,8 +88,7 @@ class TestDatabaseProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_user, user.User, True)
def test_user_find(self):
self.verify_find('openstack.database.v1.user.User.find',
self.proxy.find_user)
self.verify_find(self.proxy.find_user, user.User)
def test_users(self):
self.verify_list(self.proxy.users, user.User, paginated=False)

View File

@@ -32,8 +32,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_role, role.Role, True)
def test_role_find(self):
self.verify_find('openstack.identity.v2.role.Role.find',
self.proxy.find_role)
self.verify_find(self.proxy.find_role, role.Role)
def test_role_get(self):
self.verify_get(self.proxy.get_role, role.Role)
@@ -54,8 +53,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_tenant, tenant.Tenant, True)
def test_tenant_find(self):
self.verify_find('openstack.identity.v2.tenant.Tenant.find',
self.proxy.find_tenant)
self.verify_find(self.proxy.find_tenant, tenant.Tenant)
def test_tenant_get(self):
self.verify_get(self.proxy.get_tenant, tenant.Tenant)
@@ -76,8 +74,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_user, user.User, True)
def test_user_find(self):
self.verify_find('openstack.identity.v2.user.User.find',
self.proxy.find_user)
self.verify_find(self.proxy.find_user, user.User)
def test_user_get(self):
self.verify_get(self.proxy.get_user, user.User)

View File

@@ -42,8 +42,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
credential.Credential, True)
def test_credential_find(self):
self.verify_find('openstack.identity.v3.credential.Credential.find',
self.proxy.find_credential)
self.verify_find(self.proxy.find_credential, credential.Credential)
def test_credential_get(self):
self.verify_get(self.proxy.get_credential, credential.Credential)
@@ -65,8 +64,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_domain, domain.Domain, True)
def test_domain_find(self):
self.verify_find('openstack.identity.v3.domain.Domain.find',
self.proxy.find_domain)
self.verify_find(self.proxy.find_domain, domain.Domain)
def test_domain_get(self):
self.verify_get(self.proxy.get_domain, domain.Domain)
@@ -89,8 +87,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
endpoint.Endpoint, True)
def test_endpoint_find(self):
self.verify_find('openstack.identity.v3.endpoint.Endpoint.find',
self.proxy.find_endpoint)
self.verify_find(self.proxy.find_endpoint, endpoint.Endpoint)
def test_endpoint_get(self):
self.verify_get(self.proxy.get_endpoint, endpoint.Endpoint)
@@ -112,8 +109,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_group, group.Group, True)
def test_group_find(self):
self.verify_find('openstack.identity.v3.group.Group.find',
self.proxy.find_group)
self.verify_find(self.proxy.find_group, group.Group)
def test_group_get(self):
self.verify_get(self.proxy.get_group, group.Group)
@@ -134,8 +130,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_policy, policy.Policy, True)
def test_policy_find(self):
self.verify_find('openstack.identity.v3.policy.Policy.find',
self.proxy.find_policy)
self.verify_find(self.proxy.find_policy, policy.Policy)
def test_policy_get(self):
self.verify_get(self.proxy.get_policy, policy.Policy)
@@ -156,8 +151,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_project, project.Project, True)
def test_project_find(self):
self.verify_find('openstack.identity.v3.project.Project.find',
self.proxy.find_project)
self.verify_find(self.proxy.find_project, project.Project)
def test_project_get(self):
self.verify_get(self.proxy.get_project, project.Project)
@@ -178,8 +172,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_service, service.Service, True)
def test_service_find(self):
self.verify_find('openstack.identity.v3.service.Service.find',
self.proxy.find_service)
self.verify_find(self.proxy.find_service, service.Service)
def test_service_get(self):
self.verify_get(self.proxy.get_service, service.Service)
@@ -200,8 +193,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_user, user.User, True)
def test_user_find(self):
self.verify_find('openstack.identity.v3.user.User.find',
self.proxy.find_user)
self.verify_find(self.proxy.find_user, user.User)
def test_user_get(self):
self.verify_get(self.proxy.get_user, user.User)
@@ -222,8 +214,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_trust, trust.Trust, True)
def test_trust_find(self):
self.verify_find('openstack.identity.v3.trust.Trust.find',
self.proxy.find_trust)
self.verify_find(self.proxy.find_trust, trust.Trust)
def test_trust_get(self):
self.verify_get(self.proxy.get_trust, trust.Trust)
@@ -244,8 +235,7 @@ class TestIdentityProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_region, region.Region, True)
def test_region_find(self):
self.verify_find('openstack.identity.v3.region.Region.find',
self.proxy.find_region)
self.verify_find(self.proxy.find_region, region.Region)
def test_region_get(self):
self.verify_get(self.proxy.get_region, region.Region)

View File

@@ -30,8 +30,7 @@ class TestImageProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_image, image.Image, True)
def test_image_find(self):
self.verify_find('openstack.image.v1.image.Image.find',
self.proxy.find_image)
self.verify_find(self.proxy.find_image, image.Image)
def test_image_get(self):
self.verify_get(self.proxy.get_image, image.Image)

View File

@@ -34,9 +34,7 @@ class TestKeyManagementProxy(test_proxy_base.TestProxyBase):
container.Container, True)
def test_container_find(self):
self.verify_find(
'openstack.key_management.v1.container.Container.find',
self.proxy.find_container)
self.verify_find(self.proxy.find_container, container.Container)
def test_container_get(self):
self.verify_get(self.proxy.get_container, container.Container)
@@ -58,8 +56,7 @@ class TestKeyManagementProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_order, order.Order, True)
def test_order_find(self):
self.verify_find('openstack.key_management.v1.order.Order.find',
self.proxy.find_order)
self.verify_find(self.proxy.find_order, order.Order)
def test_order_get(self):
self.verify_get(self.proxy.get_order, order.Order)
@@ -80,8 +77,7 @@ class TestKeyManagementProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_secret, secret.Secret, True)
def test_secret_find(self):
self.verify_find('openstack.key_management.v1.secret.Secret.find',
self.proxy.find_secret)
self.verify_find(self.proxy.find_secret, secret.Secret)
def test_secret_get(self):
self.verify_get(self.proxy.get_secret, secret.Secret)

View File

@@ -39,8 +39,7 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
self.proxy = _proxy.Proxy(self.session)
def test_extension_find(self):
self.verify_find('openstack.network.v2.extension.Extension.find',
self.proxy.find_extension)
self.verify_find(self.proxy.find_extension, extension.Extension)
def test_extensions(self):
self.verify_list(self.proxy.extensions, extension.Extension,
@@ -58,8 +57,7 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
True)
def test_floating_ip_find(self):
self.verify_find('openstack.network.v2.floating_ip.FloatingIP.find',
self.proxy.find_ip)
self.verify_find(self.proxy.find_ip, floating_ip.FloatingIP)
def test_floating_ip_get(self):
self.verify_get(self.proxy.get_ip, floating_ip.FloatingIP)
@@ -84,9 +82,8 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
health_monitor.HealthMonitor, True)
def test_health_monitor_find(self):
self.verify_find(
'openstack.network.v2.health_monitor.HealthMonitor.find',
self.proxy.find_health_monitor)
self.verify_find(self.proxy.find_health_monitor,
health_monitor.HealthMonitor)
def test_health_monitor_get(self):
self.verify_get(self.proxy.get_health_monitor,
@@ -113,8 +110,7 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
listener.Listener, True)
def test_listener_find(self):
self.verify_find('openstack.network.v2.listener.Listener.find',
self.proxy.find_listener)
self.verify_find(self.proxy.find_listener, listener.Listener)
def test_listener_get(self):
self.verify_get(self.proxy.get_listener, listener.Listener)
@@ -139,9 +135,8 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
load_balancer.LoadBalancer, True)
def test_load_balancer_find(self):
self.verify_find(
'openstack.network.v2.load_balancer.LoadBalancer.find',
self.proxy.find_load_balancer)
self.verify_find(self.proxy.find_load_balancer,
load_balancer.LoadBalancer)
def test_load_balancer_get(self):
self.verify_get(self.proxy.get_load_balancer,
@@ -169,9 +164,8 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
metering_label.MeteringLabel, True)
def test_metering_label_find(self):
self.verify_find(
'openstack.network.v2.metering_label.MeteringLabel.find',
self.proxy.find_metering_label)
self.verify_find(self.proxy.find_metering_label,
metering_label.MeteringLabel)
def test_metering_label_get(self):
self.verify_get(self.proxy.get_metering_label,
@@ -199,9 +193,8 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
metering_label_rule.MeteringLabelRule, True)
def test_metering_label_rule_find(self):
self.verify_find(
'openstack.network.v2.metering_label_rule.MeteringLabelRule.find',
self.proxy.find_metering_label_rule)
self.verify_find(self.proxy.find_metering_label_rule,
metering_label_rule.MeteringLabelRule)
def test_metering_label_rule_get(self):
self.verify_get(self.proxy.get_metering_label_rule,
@@ -226,8 +219,7 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_network, network.Network, True)
def test_network_find(self):
self.verify_find('openstack.network.v2.network.Network.find',
self.proxy.find_network)
self.verify_find(self.proxy.find_network, network.Network)
def test_network_get(self):
self.verify_get(self.proxy.get_network, network.Network)
@@ -254,8 +246,9 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
{"pool": "test_id"}, {"pool_id": "test_id"})
def test_pool_member_find(self):
self.verify_find2('openstack.network.v2.pool_member.PoolMember.find',
self.proxy.find_pool_member, {"pool_id": "test_id"})
self.verify_find(self.proxy.find_pool_member,
pool_member.PoolMember,
path_args={"pool_id": "test_id"})
def test_pool_member_get(self):
self._verify2('openstack.proxy.BaseProxy._get',
@@ -285,8 +278,7 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_pool, pool.Pool, True)
def test_pool_find(self):
self.verify_find('openstack.network.v2.pool.Pool.find',
self.proxy.find_pool)
self.verify_find(self.proxy.find_pool, pool.Pool)
def test_pool_get(self):
self.verify_get(self.proxy.get_pool, pool.Pool)
@@ -307,8 +299,7 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_port, port.Port, True)
def test_port_find(self):
self.verify_find('openstack.network.v2.port.Port.find',
self.proxy.find_port)
self.verify_find(self.proxy.find_port, port.Port)
def test_port_get(self):
self.verify_get(self.proxy.get_port, port.Port)
@@ -332,8 +323,7 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_router, router.Router, True)
def test_router_find(self):
self.verify_find('openstack.network.v2.router.Router.find',
self.proxy.find_router)
self.verify_find(self.proxy.find_router, router.Router)
def test_router_get(self):
self.verify_get(self.proxy.get_router, router.Router)
@@ -357,9 +347,8 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
security_group.SecurityGroup, True)
def test_security_group_find(self):
self.verify_find(
'openstack.network.v2.security_group.SecurityGroup.find',
self.proxy.find_security_group)
self.verify_find(self.proxy.find_security_group,
security_group.SecurityGroup)
def test_security_group_get(self):
self.verify_get(self.proxy.get_security_group,
@@ -428,9 +417,8 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
security_group_rule.SecurityGroupRule, True)
def test_security_group_rule_find(self):
self.verify_find(
'openstack.network.v2.security_group_rule.SecurityGroupRule.find',
self.proxy.find_security_group_rule)
self.verify_find(self.proxy.find_security_group_rule,
security_group_rule.SecurityGroupRule)
def test_security_group_rule_get(self):
self.verify_get(self.proxy.get_security_group_rule,
@@ -451,8 +439,7 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_subnet, subnet.Subnet, True)
def test_subnet_find(self):
self.verify_find('openstack.network.v2.subnet.Subnet.find',
self.proxy.find_subnet)
self.verify_find(self.proxy.find_subnet, subnet.Subnet)
def test_subnet_get(self):
self.verify_get(self.proxy.get_subnet, subnet.Subnet)
@@ -476,8 +463,8 @@ class TestNetworkProxy(test_proxy_base.TestProxyBase):
vpn_service.VPNService, True)
def test_vpn_service_find(self):
self.verify_find('openstack.network.v2.vpn_service.VPNService.find',
self.proxy.find_vpn_service)
self.verify_find(self.proxy.find_vpn_service,
vpn_service.VPNService)
def test_vpn_service_get(self):
self.verify_get(self.proxy.get_vpn_service, vpn_service.VPNService)

View File

@@ -29,8 +29,7 @@ class TestOrchestrationProxy(test_proxy_base.TestProxyBase):
self.verify_create(self.proxy.create_stack, stack.Stack)
def test_stack_find(self):
self.verify_find('openstack.orchestration.v1.stack.Stack.find',
self.proxy.find_stack)
self.verify_find(self.proxy.find_stack, stack.Stack)
def test_stacks(self):
self.verify_list(self.proxy.stacks, stack.Stack, paginated=False)
@@ -65,8 +64,7 @@ class TestOrchestrationProxy(test_proxy_base.TestProxyBase):
self.assertEqual(0, mock_find.call_count)
def test_resources_with_stack_name(self):
self.verify_find('openstack.orchestration.v1.stack.Stack.find',
self.proxy.find_stack)
self.verify_find(self.proxy.find_stack, stack.Stack)
@mock.patch.object(stack.Stack, 'find')
@mock.patch.object(resource.Resource, 'list')

View File

@@ -27,9 +27,8 @@ class TestTelemetryProxy(test_proxy_base.TestProxyBase):
self.proxy = _proxy.Proxy(self.session)
def test_alarm_change_find(self):
self.verify_find(
'openstack.telemetry.v2.alarm_change.AlarmChange.find',
self.proxy.find_alarm_change)
self.verify_find(self.proxy.find_alarm_change,
alarm_change.AlarmChange)
def test_alarm_changes(self):
larm = alarm.Alarm.existing(alarm_id='larm')
@@ -48,8 +47,7 @@ class TestTelemetryProxy(test_proxy_base.TestProxyBase):
self.verify_delete(self.proxy.delete_alarm, alarm.Alarm, True)
def test_alarm_find(self):
self.verify_find('openstack.telemetry.v2.alarm.Alarm.find',
self.proxy.find_alarm)
self.verify_find(self.proxy.find_alarm, alarm.Alarm)
def test_alarm_get(self):
self.verify_get(self.proxy.get_alarm, alarm.Alarm)
@@ -61,23 +59,20 @@ class TestTelemetryProxy(test_proxy_base.TestProxyBase):
self.verify_update(self.proxy.update_alarm, alarm.Alarm)
def test_capability_find(self):
self.verify_find('openstack.telemetry.v2.capability.Capability.find',
self.proxy.find_capability)
self.verify_find(self.proxy.find_capability, capability.Capability)
def test_capabilities(self):
self.verify_list(self.proxy.capabilities, capability.Capability,
paginated=False)
def test_meter_find(self):
self.verify_find('openstack.telemetry.v2.meter.Meter.find',
self.proxy.find_meter)
self.verify_find(self.proxy.find_meter, meter.Meter)
def test_meters(self):
self.verify_list(self.proxy.meters, meter.Meter, paginated=False)
def test_resource_find(self):
self.verify_find('openstack.telemetry.v2.resource.Resource.find',
self.proxy.find_resource)
self.verify_find(self.proxy.find_resource, resource.Resource)
def test_resource_get(self):
self.verify_get(self.proxy.get_resource, resource.Resource)
@@ -90,8 +85,7 @@ class TestTelemetryProxy(test_proxy_base.TestProxyBase):
self.verify_create(self.proxy.create_sample, sample.Sample)
def test_sample_find(self):
self.verify_find('openstack.telemetry.v2.sample.Sample.find',
self.proxy.find_sample)
self.verify_find(self.proxy.find_sample, sample.Sample)
def test_samples(self):
met = meter.Meter.existing(name='meterone')
@@ -101,8 +95,7 @@ class TestTelemetryProxy(test_proxy_base.TestProxyBase):
paginated=False, expected_kwargs=expected_kwargs)
def test_statistics_find(self):
self.verify_find('openstack.telemetry.v2.statistics.Statistics.find',
self.proxy.find_statistics)
self.verify_find(self.proxy.find_statistics, statistics.Statistics)
def test_statistics(self):
met = meter.Meter.existing(name='meterone')

View File

@@ -121,29 +121,33 @@ class TestProxyBase(base.TestCase):
expected_args=[resource_type] + the_value,
expected_kwargs=expected_kwargs)
def verify_find(self, mock_method, test_method, **kwargs):
self._verify(mock_method, test_method, method_args=["name_or_id"],
expected_args=["name_or_id"],
expected_kwargs={'ignore_missing': True},
expected_result="result", **kwargs)
self._verify(mock_method, test_method,
method_args=["name_or_id", False],
expected_args=["name_or_id"],
expected_kwargs={'ignore_missing': False},
expected_result="result", **kwargs)
def verify_find2(self, mock_method, test_method, path_args, **kwargs):
def verify_find(self, test_method, resource_type, path_args=None,
mock_method="openstack.proxy.BaseProxy._find", **kwargs):
method_args = ["name_or_id"]
for key in path_args:
method_args.append(path_args[key])
expected_kwargs = {}
self._verify(mock_method, test_method,
method_args=method_args,
expected_args=["name_or_id"],
expected_kwargs={"path_args": path_args,
"ignore_missing": True},
expected_result="result",
**kwargs)
if path_args is not None:
for key in path_args:
method_args.append(path_args[key])
expected_kwargs = {"path_args": path_args}
# TODO(briancurtin): if sub-tests worked in this mess of
# test dependencies, the following would be a lot easier to work with.
expected_kwargs["ignore_missing"] = False
self._verify2(mock_method, test_method,
method_args=method_args + [False],
expected_args=[resource_type, "name_or_id"],
expected_kwargs=expected_kwargs,
expected_result="result",
**kwargs)
expected_kwargs["ignore_missing"] = True
self._verify2(mock_method, test_method,
method_args=method_args + [True],
expected_args=[resource_type, "name_or_id"],
expected_kwargs=expected_kwargs,
expected_result="result",
**kwargs)
def verify_list(self, test_method, resource_type, paginated=False,
mock_method="openstack.proxy.BaseProxy._list",