diff --git a/google/cloud/monitoring_v3/services/alert_policy_service/async_client.py b/google/cloud/monitoring_v3/services/alert_policy_service/async_client.py index 3a838051..b340a2c3 100644 --- a/google/cloud/monitoring_v3/services/alert_policy_service/async_client.py +++ b/google/cloud/monitoring_v3/services/alert_policy_service/async_client.py @@ -668,6 +668,12 @@ async def update_alert_policy( # Done; return the response. return response + async def __aenter__(self): + return self + + async def __aexit__(self, exc_type, exc, tb): + await self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/alert_policy_service/client.py b/google/cloud/monitoring_v3/services/alert_policy_service/client.py index 1c5bf9ec..72cc3785 100644 --- a/google/cloud/monitoring_v3/services/alert_policy_service/client.py +++ b/google/cloud/monitoring_v3/services/alert_policy_service/client.py @@ -377,10 +377,7 @@ def __init__( client_cert_source_for_mtls=client_cert_source_func, quota_project_id=client_options.quota_project_id, client_info=client_info, - always_use_jwt_access=( - Transport == type(self).get_transport_class("grpc") - or Transport == type(self).get_transport_class("grpc_asyncio") - ), + always_use_jwt_access=True, ) def list_alert_policies( @@ -840,6 +837,19 @@ def update_alert_policy( # Done; return the response. return response + def __enter__(self): + return self + + def __exit__(self, type, value, traceback): + """Releases underlying transport's resources. + + .. warning:: + ONLY use as a context manager if the transport is NOT shared + with other clients! Exiting the with block will CLOSE the transport + and may cause errors in other clients! + """ + self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/alert_policy_service/transports/base.py b/google/cloud/monitoring_v3/services/alert_policy_service/transports/base.py index 031dc657..a64044c0 100644 --- a/google/cloud/monitoring_v3/services/alert_policy_service/transports/base.py +++ b/google/cloud/monitoring_v3/services/alert_policy_service/transports/base.py @@ -210,6 +210,15 @@ def _prep_wrapped_messages(self, client_info): ), } + def close(self): + """Closes resources associated with the transport. + + .. warning:: + Only call this method if the transport is NOT shared + with other clients - this may cause errors in other clients! + """ + raise NotImplementedError() + @property def list_alert_policies( self, diff --git a/google/cloud/monitoring_v3/services/alert_policy_service/transports/grpc.py b/google/cloud/monitoring_v3/services/alert_policy_service/transports/grpc.py index b26b7982..a614ffcc 100644 --- a/google/cloud/monitoring_v3/services/alert_policy_service/transports/grpc.py +++ b/google/cloud/monitoring_v3/services/alert_policy_service/transports/grpc.py @@ -372,5 +372,8 @@ def update_alert_policy( ) return self._stubs["update_alert_policy"] + def close(self): + self.grpc_channel.close() + __all__ = ("AlertPolicyServiceGrpcTransport",) diff --git a/google/cloud/monitoring_v3/services/alert_policy_service/transports/grpc_asyncio.py b/google/cloud/monitoring_v3/services/alert_policy_service/transports/grpc_asyncio.py index 1ee6cd5a..ae1a5a74 100644 --- a/google/cloud/monitoring_v3/services/alert_policy_service/transports/grpc_asyncio.py +++ b/google/cloud/monitoring_v3/services/alert_policy_service/transports/grpc_asyncio.py @@ -379,5 +379,8 @@ def update_alert_policy( ) return self._stubs["update_alert_policy"] + def close(self): + return self.grpc_channel.close() + __all__ = ("AlertPolicyServiceGrpcAsyncIOTransport",) diff --git a/google/cloud/monitoring_v3/services/group_service/async_client.py b/google/cloud/monitoring_v3/services/group_service/async_client.py index 6ed9c9fc..7551c890 100644 --- a/google/cloud/monitoring_v3/services/group_service/async_client.py +++ b/google/cloud/monitoring_v3/services/group_service/async_client.py @@ -776,6 +776,12 @@ async def list_group_members( # Done; return the response. return response + async def __aenter__(self): + return self + + async def __aexit__(self, exc_type, exc, tb): + await self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/group_service/client.py b/google/cloud/monitoring_v3/services/group_service/client.py index 73c6cd1e..095f4751 100644 --- a/google/cloud/monitoring_v3/services/group_service/client.py +++ b/google/cloud/monitoring_v3/services/group_service/client.py @@ -352,10 +352,7 @@ def __init__( client_cert_source_for_mtls=client_cert_source_func, quota_project_id=client_options.quota_project_id, client_info=client_info, - always_use_jwt_access=( - Transport == type(self).get_transport_class("grpc") - or Transport == type(self).get_transport_class("grpc_asyncio") - ), + always_use_jwt_access=True, ) def list_groups( @@ -917,6 +914,19 @@ def list_group_members( # Done; return the response. return response + def __enter__(self): + return self + + def __exit__(self, type, value, traceback): + """Releases underlying transport's resources. + + .. warning:: + ONLY use as a context manager if the transport is NOT shared + with other clients! Exiting the with block will CLOSE the transport + and may cause errors in other clients! + """ + self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/group_service/transports/base.py b/google/cloud/monitoring_v3/services/group_service/transports/base.py index 2c538e18..41f5b47c 100644 --- a/google/cloud/monitoring_v3/services/group_service/transports/base.py +++ b/google/cloud/monitoring_v3/services/group_service/transports/base.py @@ -236,6 +236,15 @@ def _prep_wrapped_messages(self, client_info): ), } + def close(self): + """Closes resources associated with the transport. + + .. warning:: + Only call this method if the transport is NOT shared + with other clients - this may cause errors in other clients! + """ + raise NotImplementedError() + @property def list_groups( self, diff --git a/google/cloud/monitoring_v3/services/group_service/transports/grpc.py b/google/cloud/monitoring_v3/services/group_service/transports/grpc.py index e0fa2266..65dfe64a 100644 --- a/google/cloud/monitoring_v3/services/group_service/transports/grpc.py +++ b/google/cloud/monitoring_v3/services/group_service/transports/grpc.py @@ -397,5 +397,8 @@ def list_group_members( ) return self._stubs["list_group_members"] + def close(self): + self.grpc_channel.close() + __all__ = ("GroupServiceGrpcTransport",) diff --git a/google/cloud/monitoring_v3/services/group_service/transports/grpc_asyncio.py b/google/cloud/monitoring_v3/services/group_service/transports/grpc_asyncio.py index 9753edbd..e5d7ba98 100644 --- a/google/cloud/monitoring_v3/services/group_service/transports/grpc_asyncio.py +++ b/google/cloud/monitoring_v3/services/group_service/transports/grpc_asyncio.py @@ -405,5 +405,8 @@ def list_group_members( ) return self._stubs["list_group_members"] + def close(self): + return self.grpc_channel.close() + __all__ = ("GroupServiceGrpcAsyncIOTransport",) diff --git a/google/cloud/monitoring_v3/services/metric_service/async_client.py b/google/cloud/monitoring_v3/services/metric_service/async_client.py index 93647bda..81fdb43b 100644 --- a/google/cloud/monitoring_v3/services/metric_service/async_client.py +++ b/google/cloud/monitoring_v3/services/metric_service/async_client.py @@ -950,6 +950,12 @@ async def create_time_series( request, retry=retry, timeout=timeout, metadata=metadata, ) + async def __aenter__(self): + return self + + async def __aexit__(self, exc_type, exc, tb): + await self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/metric_service/client.py b/google/cloud/monitoring_v3/services/metric_service/client.py index 1930c465..92db8888 100644 --- a/google/cloud/monitoring_v3/services/metric_service/client.py +++ b/google/cloud/monitoring_v3/services/metric_service/client.py @@ -379,10 +379,7 @@ def __init__( client_cert_source_for_mtls=client_cert_source_func, quota_project_id=client_options.quota_project_id, client_info=client_info, - always_use_jwt_access=( - Transport == type(self).get_transport_class("grpc") - or Transport == type(self).get_transport_class("grpc_asyncio") - ), + always_use_jwt_access=True, ) def list_monitored_resource_descriptors( @@ -1116,6 +1113,19 @@ def create_time_series( request, retry=retry, timeout=timeout, metadata=metadata, ) + def __enter__(self): + return self + + def __exit__(self, type, value, traceback): + """Releases underlying transport's resources. + + .. warning:: + ONLY use as a context manager if the transport is NOT shared + with other clients! Exiting the with block will CLOSE the transport + and may cause errors in other clients! + """ + self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/metric_service/transports/base.py b/google/cloud/monitoring_v3/services/metric_service/transports/base.py index 5fdc2080..8e2f966e 100644 --- a/google/cloud/monitoring_v3/services/metric_service/transports/base.py +++ b/google/cloud/monitoring_v3/services/metric_service/transports/base.py @@ -256,6 +256,15 @@ def _prep_wrapped_messages(self, client_info): ), } + def close(self): + """Closes resources associated with the transport. + + .. warning:: + Only call this method if the transport is NOT shared + with other clients - this may cause errors in other clients! + """ + raise NotImplementedError() + @property def list_monitored_resource_descriptors( self, diff --git a/google/cloud/monitoring_v3/services/metric_service/transports/grpc.py b/google/cloud/monitoring_v3/services/metric_service/transports/grpc.py index 6603803f..17271a52 100644 --- a/google/cloud/monitoring_v3/services/metric_service/transports/grpc.py +++ b/google/cloud/monitoring_v3/services/metric_service/transports/grpc.py @@ -471,5 +471,8 @@ def create_time_series( ) return self._stubs["create_time_series"] + def close(self): + self.grpc_channel.close() + __all__ = ("MetricServiceGrpcTransport",) diff --git a/google/cloud/monitoring_v3/services/metric_service/transports/grpc_asyncio.py b/google/cloud/monitoring_v3/services/metric_service/transports/grpc_asyncio.py index 46c5fb2b..8d192a68 100644 --- a/google/cloud/monitoring_v3/services/metric_service/transports/grpc_asyncio.py +++ b/google/cloud/monitoring_v3/services/metric_service/transports/grpc_asyncio.py @@ -479,5 +479,8 @@ def create_time_series( ) return self._stubs["create_time_series"] + def close(self): + return self.grpc_channel.close() + __all__ = ("MetricServiceGrpcAsyncIOTransport",) diff --git a/google/cloud/monitoring_v3/services/notification_channel_service/async_client.py b/google/cloud/monitoring_v3/services/notification_channel_service/async_client.py index a475eeed..46d727cb 100644 --- a/google/cloud/monitoring_v3/services/notification_channel_service/async_client.py +++ b/google/cloud/monitoring_v3/services/notification_channel_service/async_client.py @@ -1143,6 +1143,12 @@ async def verify_notification_channel( # Done; return the response. return response + async def __aenter__(self): + return self + + async def __aexit__(self, exc_type, exc, tb): + await self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/notification_channel_service/client.py b/google/cloud/monitoring_v3/services/notification_channel_service/client.py index 75b031a3..ff563341 100644 --- a/google/cloud/monitoring_v3/services/notification_channel_service/client.py +++ b/google/cloud/monitoring_v3/services/notification_channel_service/client.py @@ -373,10 +373,7 @@ def __init__( client_cert_source_for_mtls=client_cert_source_func, quota_project_id=client_options.quota_project_id, client_info=client_info, - always_use_jwt_access=( - Transport == type(self).get_transport_class("grpc") - or Transport == type(self).get_transport_class("grpc_asyncio") - ), + always_use_jwt_access=True, ) def list_notification_channel_descriptors( @@ -1328,6 +1325,19 @@ def verify_notification_channel( # Done; return the response. return response + def __enter__(self): + return self + + def __exit__(self, type, value, traceback): + """Releases underlying transport's resources. + + .. warning:: + ONLY use as a context manager if the transport is NOT shared + with other clients! Exiting the with block will CLOSE the transport + and may cause errors in other clients! + """ + self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/notification_channel_service/transports/base.py b/google/cloud/monitoring_v3/services/notification_channel_service/transports/base.py index e7fa86ac..566fdf15 100644 --- a/google/cloud/monitoring_v3/services/notification_channel_service/transports/base.py +++ b/google/cloud/monitoring_v3/services/notification_channel_service/transports/base.py @@ -275,6 +275,15 @@ def _prep_wrapped_messages(self, client_info): ), } + def close(self): + """Closes resources associated with the transport. + + .. warning:: + Only call this method if the transport is NOT shared + with other clients - this may cause errors in other clients! + """ + raise NotImplementedError() + @property def list_notification_channel_descriptors( self, diff --git a/google/cloud/monitoring_v3/services/notification_channel_service/transports/grpc.py b/google/cloud/monitoring_v3/services/notification_channel_service/transports/grpc.py index d5890077..cacc84f2 100644 --- a/google/cloud/monitoring_v3/services/notification_channel_service/transports/grpc.py +++ b/google/cloud/monitoring_v3/services/notification_channel_service/transports/grpc.py @@ -574,5 +574,8 @@ def verify_notification_channel( ) return self._stubs["verify_notification_channel"] + def close(self): + self.grpc_channel.close() + __all__ = ("NotificationChannelServiceGrpcTransport",) diff --git a/google/cloud/monitoring_v3/services/notification_channel_service/transports/grpc_asyncio.py b/google/cloud/monitoring_v3/services/notification_channel_service/transports/grpc_asyncio.py index 6ba6e04f..fca47836 100644 --- a/google/cloud/monitoring_v3/services/notification_channel_service/transports/grpc_asyncio.py +++ b/google/cloud/monitoring_v3/services/notification_channel_service/transports/grpc_asyncio.py @@ -580,5 +580,8 @@ def verify_notification_channel( ) return self._stubs["verify_notification_channel"] + def close(self): + return self.grpc_channel.close() + __all__ = ("NotificationChannelServiceGrpcAsyncIOTransport",) diff --git a/google/cloud/monitoring_v3/services/query_service/async_client.py b/google/cloud/monitoring_v3/services/query_service/async_client.py index f86aa667..c244368b 100644 --- a/google/cloud/monitoring_v3/services/query_service/async_client.py +++ b/google/cloud/monitoring_v3/services/query_service/async_client.py @@ -216,6 +216,12 @@ async def query_time_series( # Done; return the response. return response + async def __aenter__(self): + return self + + async def __aexit__(self, exc_type, exc, tb): + await self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/query_service/client.py b/google/cloud/monitoring_v3/services/query_service/client.py index 22394a8f..c05db7f4 100644 --- a/google/cloud/monitoring_v3/services/query_service/client.py +++ b/google/cloud/monitoring_v3/services/query_service/client.py @@ -330,10 +330,7 @@ def __init__( client_cert_source_for_mtls=client_cert_source_func, quota_project_id=client_options.quota_project_id, client_info=client_info, - always_use_jwt_access=( - Transport == type(self).get_transport_class("grpc") - or Transport == type(self).get_transport_class("grpc_asyncio") - ), + always_use_jwt_access=True, ) def query_time_series( @@ -394,6 +391,19 @@ def query_time_series( # Done; return the response. return response + def __enter__(self): + return self + + def __exit__(self, type, value, traceback): + """Releases underlying transport's resources. + + .. warning:: + ONLY use as a context manager if the transport is NOT shared + with other clients! Exiting the with block will CLOSE the transport + and may cause errors in other clients! + """ + self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/query_service/transports/base.py b/google/cloud/monitoring_v3/services/query_service/transports/base.py index 25f30682..74773560 100644 --- a/google/cloud/monitoring_v3/services/query_service/transports/base.py +++ b/google/cloud/monitoring_v3/services/query_service/transports/base.py @@ -163,6 +163,15 @@ def _prep_wrapped_messages(self, client_info): ), } + def close(self): + """Closes resources associated with the transport. + + .. warning:: + Only call this method if the transport is NOT shared + with other clients - this may cause errors in other clients! + """ + raise NotImplementedError() + @property def query_time_series( self, diff --git a/google/cloud/monitoring_v3/services/query_service/transports/grpc.py b/google/cloud/monitoring_v3/services/query_service/transports/grpc.py index 133cb1c7..27244056 100644 --- a/google/cloud/monitoring_v3/services/query_service/transports/grpc.py +++ b/google/cloud/monitoring_v3/services/query_service/transports/grpc.py @@ -256,5 +256,8 @@ def query_time_series( ) return self._stubs["query_time_series"] + def close(self): + self.grpc_channel.close() + __all__ = ("QueryServiceGrpcTransport",) diff --git a/google/cloud/monitoring_v3/services/query_service/transports/grpc_asyncio.py b/google/cloud/monitoring_v3/services/query_service/transports/grpc_asyncio.py index c93cf77f..e6cf8540 100644 --- a/google/cloud/monitoring_v3/services/query_service/transports/grpc_asyncio.py +++ b/google/cloud/monitoring_v3/services/query_service/transports/grpc_asyncio.py @@ -260,5 +260,8 @@ def query_time_series( ) return self._stubs["query_time_series"] + def close(self): + return self.grpc_channel.close() + __all__ = ("QueryServiceGrpcAsyncIOTransport",) diff --git a/google/cloud/monitoring_v3/services/service_monitoring_service/async_client.py b/google/cloud/monitoring_v3/services/service_monitoring_service/async_client.py index 012dd79f..6eb0a034 100644 --- a/google/cloud/monitoring_v3/services/service_monitoring_service/async_client.py +++ b/google/cloud/monitoring_v3/services/service_monitoring_service/async_client.py @@ -1053,6 +1053,12 @@ async def delete_service_level_objective( request, retry=retry, timeout=timeout, metadata=metadata, ) + async def __aenter__(self): + return self + + async def __aexit__(self, exc_type, exc, tb): + await self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/service_monitoring_service/client.py b/google/cloud/monitoring_v3/services/service_monitoring_service/client.py index 8cac0642..bd847d42 100644 --- a/google/cloud/monitoring_v3/services/service_monitoring_service/client.py +++ b/google/cloud/monitoring_v3/services/service_monitoring_service/client.py @@ -371,10 +371,7 @@ def __init__( client_cert_source_for_mtls=client_cert_source_func, quota_project_id=client_options.quota_project_id, client_info=client_info, - always_use_jwt_access=( - Transport == type(self).get_transport_class("grpc") - or Transport == type(self).get_transport_class("grpc_asyncio") - ), + always_use_jwt_access=True, ) def create_service( @@ -1206,6 +1203,19 @@ def delete_service_level_objective( request, retry=retry, timeout=timeout, metadata=metadata, ) + def __enter__(self): + return self + + def __exit__(self, type, value, traceback): + """Releases underlying transport's resources. + + .. warning:: + ONLY use as a context manager if the transport is NOT shared + with other clients! Exiting the with block will CLOSE the transport + and may cause errors in other clients! + """ + self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/service_monitoring_service/transports/base.py b/google/cloud/monitoring_v3/services/service_monitoring_service/transports/base.py index bf81c851..60f5d9a9 100644 --- a/google/cloud/monitoring_v3/services/service_monitoring_service/transports/base.py +++ b/google/cloud/monitoring_v3/services/service_monitoring_service/transports/base.py @@ -263,6 +263,15 @@ def _prep_wrapped_messages(self, client_info): ), } + def close(self): + """Closes resources associated with the transport. + + .. warning:: + Only call this method if the transport is NOT shared + with other clients - this may cause errors in other clients! + """ + raise NotImplementedError() + @property def create_service( self, diff --git a/google/cloud/monitoring_v3/services/service_monitoring_service/transports/grpc.py b/google/cloud/monitoring_v3/services/service_monitoring_service/transports/grpc.py index 041aeb11..c570eea7 100644 --- a/google/cloud/monitoring_v3/services/service_monitoring_service/transports/grpc.py +++ b/google/cloud/monitoring_v3/services/service_monitoring_service/transports/grpc.py @@ -514,5 +514,8 @@ def delete_service_level_objective( ) return self._stubs["delete_service_level_objective"] + def close(self): + self.grpc_channel.close() + __all__ = ("ServiceMonitoringServiceGrpcTransport",) diff --git a/google/cloud/monitoring_v3/services/service_monitoring_service/transports/grpc_asyncio.py b/google/cloud/monitoring_v3/services/service_monitoring_service/transports/grpc_asyncio.py index 0ab6c15f..0dad4f05 100644 --- a/google/cloud/monitoring_v3/services/service_monitoring_service/transports/grpc_asyncio.py +++ b/google/cloud/monitoring_v3/services/service_monitoring_service/transports/grpc_asyncio.py @@ -523,5 +523,8 @@ def delete_service_level_objective( ) return self._stubs["delete_service_level_objective"] + def close(self): + return self.grpc_channel.close() + __all__ = ("ServiceMonitoringServiceGrpcAsyncIOTransport",) diff --git a/google/cloud/monitoring_v3/services/uptime_check_service/async_client.py b/google/cloud/monitoring_v3/services/uptime_check_service/async_client.py index cb7c6966..8e27a15d 100644 --- a/google/cloud/monitoring_v3/services/uptime_check_service/async_client.py +++ b/google/cloud/monitoring_v3/services/uptime_check_service/async_client.py @@ -675,6 +675,12 @@ async def list_uptime_check_ips( # Done; return the response. return response + async def __aenter__(self): + return self + + async def __aexit__(self, exc_type, exc, tb): + await self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/uptime_check_service/client.py b/google/cloud/monitoring_v3/services/uptime_check_service/client.py index b7d1752f..9254ffb7 100644 --- a/google/cloud/monitoring_v3/services/uptime_check_service/client.py +++ b/google/cloud/monitoring_v3/services/uptime_check_service/client.py @@ -357,10 +357,7 @@ def __init__( client_cert_source_for_mtls=client_cert_source_func, quota_project_id=client_options.quota_project_id, client_info=client_info, - always_use_jwt_access=( - Transport == type(self).get_transport_class("grpc") - or Transport == type(self).get_transport_class("grpc_asyncio") - ), + always_use_jwt_access=True, ) def list_uptime_check_configs( @@ -834,6 +831,19 @@ def list_uptime_check_ips( # Done; return the response. return response + def __enter__(self): + return self + + def __exit__(self, type, value, traceback): + """Releases underlying transport's resources. + + .. warning:: + ONLY use as a context manager if the transport is NOT shared + with other clients! Exiting the with block will CLOSE the transport + and may cause errors in other clients! + """ + self.transport.close() + try: DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo( diff --git a/google/cloud/monitoring_v3/services/uptime_check_service/transports/base.py b/google/cloud/monitoring_v3/services/uptime_check_service/transports/base.py index 86229b74..feff8e21 100644 --- a/google/cloud/monitoring_v3/services/uptime_check_service/transports/base.py +++ b/google/cloud/monitoring_v3/services/uptime_check_service/transports/base.py @@ -228,6 +228,15 @@ def _prep_wrapped_messages(self, client_info): ), } + def close(self): + """Closes resources associated with the transport. + + .. warning:: + Only call this method if the transport is NOT shared + with other clients - this may cause errors in other clients! + """ + raise NotImplementedError() + @property def list_uptime_check_configs( self, diff --git a/google/cloud/monitoring_v3/services/uptime_check_service/transports/grpc.py b/google/cloud/monitoring_v3/services/uptime_check_service/transports/grpc.py index ea012574..1ccb7acf 100644 --- a/google/cloud/monitoring_v3/services/uptime_check_service/transports/grpc.py +++ b/google/cloud/monitoring_v3/services/uptime_check_service/transports/grpc.py @@ -412,5 +412,8 @@ def list_uptime_check_ips( ) return self._stubs["list_uptime_check_ips"] + def close(self): + self.grpc_channel.close() + __all__ = ("UptimeCheckServiceGrpcTransport",) diff --git a/google/cloud/monitoring_v3/services/uptime_check_service/transports/grpc_asyncio.py b/google/cloud/monitoring_v3/services/uptime_check_service/transports/grpc_asyncio.py index fd01b0c8..239437a8 100644 --- a/google/cloud/monitoring_v3/services/uptime_check_service/transports/grpc_asyncio.py +++ b/google/cloud/monitoring_v3/services/uptime_check_service/transports/grpc_asyncio.py @@ -420,5 +420,8 @@ def list_uptime_check_ips( ) return self._stubs["list_uptime_check_ips"] + def close(self): + return self.grpc_channel.close() + __all__ = ("UptimeCheckServiceGrpcAsyncIOTransport",) diff --git a/google/cloud/monitoring_v3/types/alert_service.py b/google/cloud/monitoring_v3/types/alert_service.py index 7ee6b820..b7a23e98 100644 --- a/google/cloud/monitoring_v3/types/alert_service.py +++ b/google/cloud/monitoring_v3/types/alert_service.py @@ -34,6 +34,7 @@ class CreateAlertPolicyRequest(proto.Message): r"""The protocol for the ``CreateAlertPolicy`` request. + Attributes: name (str): Required. The @@ -64,6 +65,7 @@ class CreateAlertPolicyRequest(proto.Message): class GetAlertPolicyRequest(proto.Message): r"""The protocol for the ``GetAlertPolicy`` request. + Attributes: name (str): Required. The alerting policy to retrieve. The format is: @@ -78,6 +80,7 @@ class GetAlertPolicyRequest(proto.Message): class ListAlertPoliciesRequest(proto.Message): r"""The protocol for the ``ListAlertPolicies`` request. + Attributes: name (str): Required. The @@ -126,6 +129,7 @@ class ListAlertPoliciesRequest(proto.Message): class ListAlertPoliciesResponse(proto.Message): r"""The protocol for the ``ListAlertPolicies`` response. + Attributes: alert_policies (Sequence[google.cloud.monitoring_v3.types.AlertPolicy]): The returned alert policies. @@ -153,6 +157,7 @@ def raw_page(self): class UpdateAlertPolicyRequest(proto.Message): r"""The protocol for the ``UpdateAlertPolicy`` request. + Attributes: update_mask (google.protobuf.field_mask_pb2.FieldMask): Optional. A list of alerting policy field names. If this @@ -197,6 +202,7 @@ class UpdateAlertPolicyRequest(proto.Message): class DeleteAlertPolicyRequest(proto.Message): r"""The protocol for the ``DeleteAlertPolicy`` request. + Attributes: name (str): Required. The alerting policy to delete. The format is: diff --git a/google/cloud/monitoring_v3/types/common.py b/google/cloud/monitoring_v3/types/common.py index c5669f86..c1a71544 100644 --- a/google/cloud/monitoring_v3/types/common.py +++ b/google/cloud/monitoring_v3/types/common.py @@ -41,6 +41,7 @@ class ComparisonType(proto.Enum): class TypedValue(proto.Message): r"""A single strongly-typed value. + Attributes: bool_value (bool): A Boolean value: ``true`` or ``false``. diff --git a/google/cloud/monitoring_v3/types/group_service.py b/google/cloud/monitoring_v3/types/group_service.py index b450f470..12f02f09 100644 --- a/google/cloud/monitoring_v3/types/group_service.py +++ b/google/cloud/monitoring_v3/types/group_service.py @@ -37,6 +37,7 @@ class ListGroupsRequest(proto.Message): r"""The ``ListGroup`` request. + Attributes: name (str): Required. The @@ -99,6 +100,7 @@ class ListGroupsRequest(proto.Message): class ListGroupsResponse(proto.Message): r"""The ``ListGroups`` response. + Attributes: group (Sequence[google.cloud.monitoring_v3.types.Group]): The groups that match the specified filters. @@ -119,6 +121,7 @@ def raw_page(self): class GetGroupRequest(proto.Message): r"""The ``GetGroup`` request. + Attributes: name (str): Required. The group to retrieve. The format is: @@ -133,6 +136,7 @@ class GetGroupRequest(proto.Message): class CreateGroupRequest(proto.Message): r"""The ``CreateGroup`` request. + Attributes: name (str): Required. The @@ -157,6 +161,7 @@ class CreateGroupRequest(proto.Message): class UpdateGroupRequest(proto.Message): r"""The ``UpdateGroup`` request. + Attributes: group (google.cloud.monitoring_v3.types.Group): Required. The new definition of the group. All fields of the @@ -196,6 +201,7 @@ class DeleteGroupRequest(proto.Message): class ListGroupMembersRequest(proto.Message): r"""The ``ListGroupMembers`` request. + Attributes: name (str): Required. The group whose members are listed. The format is: @@ -241,6 +247,7 @@ class ListGroupMembersRequest(proto.Message): class ListGroupMembersResponse(proto.Message): r"""The ``ListGroupMembers`` response. + Attributes: members (Sequence[google.api.monitored_resource_pb2.MonitoredResource]): A set of monitored resources in the group. diff --git a/google/cloud/monitoring_v3/types/metric.py b/google/cloud/monitoring_v3/types/metric.py index d364d76a..0f55ffd8 100644 --- a/google/cloud/monitoring_v3/types/metric.py +++ b/google/cloud/monitoring_v3/types/metric.py @@ -37,6 +37,7 @@ class Point(proto.Message): r"""A single data point in a time series. + Attributes: interval (google.cloud.monitoring_v3.types.TimeInterval): The time interval to which the data point applies. For @@ -140,6 +141,7 @@ class TimeSeries(proto.Message): class TimeSeriesDescriptor(proto.Message): r"""A descriptor for the labels and points in a time series. + Attributes: label_descriptors (Sequence[google.api.label_pb2.LabelDescriptor]): Descriptors for the labels. @@ -149,6 +151,7 @@ class TimeSeriesDescriptor(proto.Message): class ValueDescriptor(proto.Message): r"""A descriptor for the value columns in a data point. + Attributes: key (str): The value key. @@ -221,6 +224,7 @@ class PointData(proto.Message): class LabelValue(proto.Message): r"""A label value. + Attributes: bool_value (bool): A bool label value. @@ -300,6 +304,7 @@ class TextLocator(proto.Message): class Position(proto.Message): r"""The position of a byte within the text. + Attributes: line (int): The line, starting with 1, where the byte is diff --git a/google/cloud/monitoring_v3/types/metric_service.py b/google/cloud/monitoring_v3/types/metric_service.py index 15cfc281..43a2b151 100644 --- a/google/cloud/monitoring_v3/types/metric_service.py +++ b/google/cloud/monitoring_v3/types/metric_service.py @@ -47,6 +47,7 @@ class ListMonitoredResourceDescriptorsRequest(proto.Message): r"""The ``ListMonitoredResourceDescriptors`` request. + Attributes: name (str): Required. The @@ -85,6 +86,7 @@ class ListMonitoredResourceDescriptorsRequest(proto.Message): class ListMonitoredResourceDescriptorsResponse(proto.Message): r"""The ``ListMonitoredResourceDescriptors`` response. + Attributes: resource_descriptors (Sequence[google.api.monitored_resource_pb2.MonitoredResourceDescriptor]): The monitored resource descriptors that are available to @@ -110,6 +112,7 @@ def raw_page(self): class GetMonitoredResourceDescriptorRequest(proto.Message): r"""The ``GetMonitoredResourceDescriptor`` request. + Attributes: name (str): Required. The monitored resource descriptor to get. The @@ -128,6 +131,7 @@ class GetMonitoredResourceDescriptorRequest(proto.Message): class ListMetricDescriptorsRequest(proto.Message): r"""The ``ListMetricDescriptors`` request. + Attributes: name (str): Required. The @@ -166,6 +170,7 @@ class ListMetricDescriptorsRequest(proto.Message): class ListMetricDescriptorsResponse(proto.Message): r"""The ``ListMetricDescriptors`` response. + Attributes: metric_descriptors (Sequence[google.api.metric_pb2.MetricDescriptor]): The metric descriptors that are available to the project and @@ -189,6 +194,7 @@ def raw_page(self): class GetMetricDescriptorRequest(proto.Message): r"""The ``GetMetricDescriptor`` request. + Attributes: name (str): Required. The metric descriptor on which to execute the @@ -207,6 +213,7 @@ class GetMetricDescriptorRequest(proto.Message): class CreateMetricDescriptorRequest(proto.Message): r"""The ``CreateMetricDescriptor`` request. + Attributes: name (str): Required. The @@ -227,6 +234,7 @@ class CreateMetricDescriptorRequest(proto.Message): class DeleteMetricDescriptorRequest(proto.Message): r"""The ``DeleteMetricDescriptor`` request. + Attributes: name (str): Required. The metric descriptor on which to execute the @@ -245,6 +253,7 @@ class DeleteMetricDescriptorRequest(proto.Message): class ListTimeSeriesRequest(proto.Message): r"""The ``ListTimeSeries`` request. + Attributes: name (str): Required. The @@ -325,6 +334,7 @@ class TimeSeriesView(proto.Enum): class ListTimeSeriesResponse(proto.Message): r"""The ``ListTimeSeries`` response. + Attributes: time_series (Sequence[google.cloud.monitoring_v3.types.TimeSeries]): One or more time series that match the filter @@ -362,6 +372,7 @@ def raw_page(self): class CreateTimeSeriesRequest(proto.Message): r"""The ``CreateTimeSeries`` request. + Attributes: name (str): Required. The @@ -391,6 +402,7 @@ class CreateTimeSeriesRequest(proto.Message): class CreateTimeSeriesError(proto.Message): r"""DEPRECATED. Used to hold per-time-series error status. + Attributes: time_series (google.cloud.monitoring_v3.types.TimeSeries): DEPRECATED. Time series ID that resulted in the ``status`` @@ -421,6 +433,7 @@ class CreateTimeSeriesSummary(proto.Message): class Error(proto.Message): r"""Detailed information about an error category. + Attributes: status (google.rpc.status_pb2.Status): The status of the requested write operation. @@ -439,6 +452,7 @@ class Error(proto.Message): class QueryTimeSeriesRequest(proto.Message): r"""The ``QueryTimeSeries`` request. + Attributes: name (str): Required. The @@ -470,6 +484,7 @@ class QueryTimeSeriesRequest(proto.Message): class QueryTimeSeriesResponse(proto.Message): r"""The ``QueryTimeSeries`` response. + Attributes: time_series_descriptor (google.cloud.monitoring_v3.types.TimeSeriesDescriptor): The descriptor for the time series data. diff --git a/google/cloud/monitoring_v3/types/mutation_record.py b/google/cloud/monitoring_v3/types/mutation_record.py index fbbe735a..fa37617f 100644 --- a/google/cloud/monitoring_v3/types/mutation_record.py +++ b/google/cloud/monitoring_v3/types/mutation_record.py @@ -25,6 +25,7 @@ class MutationRecord(proto.Message): r"""Describes a change made to a configuration. + Attributes: mutate_time (google.protobuf.timestamp_pb2.Timestamp): When the change occurred. diff --git a/google/cloud/monitoring_v3/types/notification_service.py b/google/cloud/monitoring_v3/types/notification_service.py index db736eb8..f1f02477 100644 --- a/google/cloud/monitoring_v3/types/notification_service.py +++ b/google/cloud/monitoring_v3/types/notification_service.py @@ -42,6 +42,7 @@ class ListNotificationChannelDescriptorsRequest(proto.Message): r"""The ``ListNotificationChannelDescriptors`` request. + Attributes: name (str): Required. The REST resource name of the parent from which to @@ -76,6 +77,7 @@ class ListNotificationChannelDescriptorsRequest(proto.Message): class ListNotificationChannelDescriptorsResponse(proto.Message): r"""The ``ListNotificationChannelDescriptors`` response. + Attributes: channel_descriptors (Sequence[google.cloud.monitoring_v3.types.NotificationChannelDescriptor]): The monitored resource descriptors supported @@ -99,6 +101,7 @@ def raw_page(self): class GetNotificationChannelDescriptorRequest(proto.Message): r"""The ``GetNotificationChannelDescriptor`` response. + Attributes: name (str): Required. The channel type for which to execute the request. @@ -114,6 +117,7 @@ class GetNotificationChannelDescriptorRequest(proto.Message): class CreateNotificationChannelRequest(proto.Message): r"""The ``CreateNotificationChannel`` request. + Attributes: name (str): Required. The @@ -143,6 +147,7 @@ class CreateNotificationChannelRequest(proto.Message): class ListNotificationChannelsRequest(proto.Message): r"""The ``ListNotificationChannels`` request. + Attributes: name (str): Required. The @@ -192,6 +197,7 @@ class ListNotificationChannelsRequest(proto.Message): class ListNotificationChannelsResponse(proto.Message): r"""The ``ListNotificationChannels`` response. + Attributes: notification_channels (Sequence[google.cloud.monitoring_v3.types.NotificationChannel]): The notification channels defined for the @@ -221,6 +227,7 @@ def raw_page(self): class GetNotificationChannelRequest(proto.Message): r"""The ``GetNotificationChannel`` request. + Attributes: name (str): Required. The channel for which to execute the request. The @@ -236,6 +243,7 @@ class GetNotificationChannelRequest(proto.Message): class UpdateNotificationChannelRequest(proto.Message): r"""The ``UpdateNotificationChannel`` request. + Attributes: update_mask (google.protobuf.field_mask_pb2.FieldMask): The fields to update. @@ -256,6 +264,7 @@ class UpdateNotificationChannelRequest(proto.Message): class DeleteNotificationChannelRequest(proto.Message): r"""The ``DeleteNotificationChannel`` request. + Attributes: name (str): Required. The channel for which to execute the request. The @@ -279,6 +288,7 @@ class DeleteNotificationChannelRequest(proto.Message): class SendNotificationChannelVerificationCodeRequest(proto.Message): r"""The ``SendNotificationChannelVerificationCode`` request. + Attributes: name (str): Required. The notification channel to which @@ -290,6 +300,7 @@ class SendNotificationChannelVerificationCodeRequest(proto.Message): class GetNotificationChannelVerificationCodeRequest(proto.Message): r"""The ``GetNotificationChannelVerificationCode`` request. + Attributes: name (str): Required. The notification channel for which @@ -320,6 +331,7 @@ class GetNotificationChannelVerificationCodeRequest(proto.Message): class GetNotificationChannelVerificationCodeResponse(proto.Message): r"""The ``GetNotificationChannelVerificationCode`` request. + Attributes: code (str): The verification code, which may be used to @@ -342,6 +354,7 @@ class GetNotificationChannelVerificationCodeResponse(proto.Message): class VerifyNotificationChannelRequest(proto.Message): r"""The ``VerifyNotificationChannel`` request. + Attributes: name (str): Required. The notification channel to verify. diff --git a/google/cloud/monitoring_v3/types/service.py b/google/cloud/monitoring_v3/types/service.py index 1cf9bccf..1e3a4c8b 100644 --- a/google/cloud/monitoring_v3/types/service.py +++ b/google/cloud/monitoring_v3/types/service.py @@ -87,7 +87,8 @@ class Service(proto.Message): class Custom(proto.Message): r"""Custom view of service telemetry. Currently a place-holder pending final design. - """ + + """ class AppEngine(proto.Message): r"""App Engine service. Learn more at @@ -200,6 +201,7 @@ class IstioCanonicalService(proto.Message): class Telemetry(proto.Message): r"""Configuration for how to query telemetry on a Service. + Attributes: resource_name (str): The full name of the resource that defines this service. @@ -384,10 +386,12 @@ class BasicSli(proto.Message): """ class AvailabilityCriteria(proto.Message): - r"""Future parameters for the availability SLI. """ + r"""Future parameters for the availability SLI. + """ class LatencyCriteria(proto.Message): r"""Parameters for a latency threshold SLI. + Attributes: threshold (google.protobuf.duration_pb2.Duration): Good service is defined to be the count of requests made to diff --git a/google/cloud/monitoring_v3/types/service_service.py b/google/cloud/monitoring_v3/types/service_service.py index cd68e245..dd086829 100644 --- a/google/cloud/monitoring_v3/types/service_service.py +++ b/google/cloud/monitoring_v3/types/service_service.py @@ -40,6 +40,7 @@ class CreateServiceRequest(proto.Message): r"""The ``CreateService`` request. + Attributes: parent (str): Required. Resource @@ -64,6 +65,7 @@ class CreateServiceRequest(proto.Message): class GetServiceRequest(proto.Message): r"""The ``GetService`` request. + Attributes: name (str): Required. Resource name of the ``Service``. The format is: @@ -78,6 +80,7 @@ class GetServiceRequest(proto.Message): class ListServicesRequest(proto.Message): r"""The ``ListServices`` request. + Attributes: parent (str): Required. Resource name of the parent containing the listed @@ -132,6 +135,7 @@ class ListServicesRequest(proto.Message): class ListServicesResponse(proto.Message): r"""The ``ListServices`` response. + Attributes: services (Sequence[google.cloud.monitoring_v3.types.Service]): The ``Service``\ s matching the specified filter. @@ -152,6 +156,7 @@ def raw_page(self): class UpdateServiceRequest(proto.Message): r"""The ``UpdateService`` request. + Attributes: service (google.cloud.monitoring_v3.types.Service): Required. The ``Service`` to draw updates from. The given @@ -169,6 +174,7 @@ class UpdateServiceRequest(proto.Message): class DeleteServiceRequest(proto.Message): r"""The ``DeleteService`` request. + Attributes: name (str): Required. Resource name of the ``Service`` to delete. The @@ -184,6 +190,7 @@ class DeleteServiceRequest(proto.Message): class CreateServiceLevelObjectiveRequest(proto.Message): r"""The ``CreateServiceLevelObjective`` request. + Attributes: parent (str): Required. Resource name of the parent ``Service``. The @@ -211,6 +218,7 @@ class CreateServiceLevelObjectiveRequest(proto.Message): class GetServiceLevelObjectiveRequest(proto.Message): r"""The ``GetServiceLevelObjective`` request. + Attributes: name (str): Required. Resource name of the ``ServiceLevelObjective`` to @@ -236,6 +244,7 @@ class GetServiceLevelObjectiveRequest(proto.Message): class ListServiceLevelObjectivesRequest(proto.Message): r"""The ``ListServiceLevelObjectives`` request. + Attributes: parent (str): Required. Resource name of the parent containing the listed @@ -278,6 +287,7 @@ class ListServiceLevelObjectivesRequest(proto.Message): class ListServiceLevelObjectivesResponse(proto.Message): r"""The ``ListServiceLevelObjectives`` response. + Attributes: service_level_objectives (Sequence[google.cloud.monitoring_v3.types.ServiceLevelObjective]): The ``ServiceLevelObjective``\ s matching the specified @@ -301,6 +311,7 @@ def raw_page(self): class UpdateServiceLevelObjectiveRequest(proto.Message): r"""The ``UpdateServiceLevelObjective`` request. + Attributes: service_level_objective (google.cloud.monitoring_v3.types.ServiceLevelObjective): Required. The ``ServiceLevelObjective`` to draw updates @@ -320,6 +331,7 @@ class UpdateServiceLevelObjectiveRequest(proto.Message): class DeleteServiceLevelObjectiveRequest(proto.Message): r"""The ``DeleteServiceLevelObjective`` request. + Attributes: name (str): Required. Resource name of the ``ServiceLevelObjective`` to diff --git a/google/cloud/monitoring_v3/types/uptime.py b/google/cloud/monitoring_v3/types/uptime.py index e3218bc2..c1ed613e 100644 --- a/google/cloud/monitoring_v3/types/uptime.py +++ b/google/cloud/monitoring_v3/types/uptime.py @@ -203,6 +203,7 @@ class ResourceGroup(proto.Message): class HttpCheck(proto.Message): r"""Information involved in an HTTP/HTTPS Uptime check request. + Attributes: request_method (google.cloud.monitoring_v3.types.UptimeCheckConfig.HttpCheck.RequestMethod): The HTTP request method to use for the check. If set to @@ -329,6 +330,7 @@ class BasicAuthentication(proto.Message): class TcpCheck(proto.Message): r"""Information required for a TCP Uptime check request. + Attributes: port (int): The TCP port on the server against which to run the check. diff --git a/google/cloud/monitoring_v3/types/uptime_service.py b/google/cloud/monitoring_v3/types/uptime_service.py index 5f2bc919..9533cd9b 100644 --- a/google/cloud/monitoring_v3/types/uptime_service.py +++ b/google/cloud/monitoring_v3/types/uptime_service.py @@ -36,6 +36,7 @@ class ListUptimeCheckConfigsRequest(proto.Message): r"""The protocol for the ``ListUptimeCheckConfigs`` request. + Attributes: parent (str): Required. The @@ -65,6 +66,7 @@ class ListUptimeCheckConfigsRequest(proto.Message): class ListUptimeCheckConfigsResponse(proto.Message): r"""The protocol for the ``ListUptimeCheckConfigs`` response. + Attributes: uptime_check_configs (Sequence[google.cloud.monitoring_v3.types.UptimeCheckConfig]): The returned Uptime check configurations. @@ -94,6 +96,7 @@ def raw_page(self): class GetUptimeCheckConfigRequest(proto.Message): r"""The protocol for the ``GetUptimeCheckConfig`` request. + Attributes: name (str): Required. The Uptime check configuration to retrieve. The @@ -109,6 +112,7 @@ class GetUptimeCheckConfigRequest(proto.Message): class CreateUptimeCheckConfigRequest(proto.Message): r"""The protocol for the ``CreateUptimeCheckConfig`` request. + Attributes: parent (str): Required. The @@ -130,6 +134,7 @@ class CreateUptimeCheckConfigRequest(proto.Message): class UpdateUptimeCheckConfigRequest(proto.Message): r"""The protocol for the ``UpdateUptimeCheckConfig`` request. + Attributes: update_mask (google.protobuf.field_mask_pb2.FieldMask): Optional. If present, only the listed fields @@ -163,6 +168,7 @@ class UpdateUptimeCheckConfigRequest(proto.Message): class DeleteUptimeCheckConfigRequest(proto.Message): r"""The protocol for the ``DeleteUptimeCheckConfig`` request. + Attributes: name (str): Required. The Uptime check configuration to delete. The @@ -178,6 +184,7 @@ class DeleteUptimeCheckConfigRequest(proto.Message): class ListUptimeCheckIpsRequest(proto.Message): r"""The protocol for the ``ListUptimeCheckIps`` request. + Attributes: page_size (int): The maximum number of results to return in a single @@ -200,6 +207,7 @@ class ListUptimeCheckIpsRequest(proto.Message): class ListUptimeCheckIpsResponse(proto.Message): r"""The protocol for the ``ListUptimeCheckIps`` response. + Attributes: uptime_check_ips (Sequence[google.cloud.monitoring_v3.types.UptimeCheckIp]): The returned list of IP addresses (including diff --git a/tests/unit/gapic/monitoring_v3/test_alert_policy_service.py b/tests/unit/gapic/monitoring_v3/test_alert_policy_service.py index 2a70684d..87432995 100644 --- a/tests/unit/gapic/monitoring_v3/test_alert_policy_service.py +++ b/tests/unit/gapic/monitoring_v3/test_alert_policy_service.py @@ -29,6 +29,7 @@ from google.api_core import gapic_v1 from google.api_core import grpc_helpers from google.api_core import grpc_helpers_async +from google.api_core import path_template from google.auth import credentials as ga_credentials from google.auth.exceptions import MutualTLSChannelError from google.cloud.monitoring_v3.services.alert_policy_service import ( @@ -1943,6 +1944,9 @@ def test_alert_policy_service_base_transport(): with pytest.raises(NotImplementedError): getattr(transport, method)(request=object()) + with pytest.raises(NotImplementedError): + transport.close() + @requires_google_auth_gte_1_25_0 def test_alert_policy_service_base_transport_with_credentials_file(): @@ -2479,3 +2483,49 @@ def test_client_withDEFAULT_CLIENT_INFO(): credentials=ga_credentials.AnonymousCredentials(), client_info=client_info, ) prep.assert_called_once_with(client_info) + + +@pytest.mark.asyncio +async def test_transport_close_async(): + client = AlertPolicyServiceAsyncClient( + credentials=ga_credentials.AnonymousCredentials(), transport="grpc_asyncio", + ) + with mock.patch.object( + type(getattr(client.transport, "grpc_channel")), "close" + ) as close: + async with client: + close.assert_not_called() + close.assert_called_once() + + +def test_transport_close(): + transports = { + "grpc": "_grpc_channel", + } + + for transport, close_name in transports.items(): + client = AlertPolicyServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + with mock.patch.object( + type(getattr(client.transport, close_name)), "close" + ) as close: + with client: + close.assert_not_called() + close.assert_called_once() + + +def test_client_ctx(): + transports = [ + "grpc", + ] + for transport in transports: + client = AlertPolicyServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + # Test client calls underlying transport. + with mock.patch.object(type(client.transport), "close") as close: + close.assert_not_called() + with client: + pass + close.assert_called() diff --git a/tests/unit/gapic/monitoring_v3/test_group_service.py b/tests/unit/gapic/monitoring_v3/test_group_service.py index 78db1e05..944ed6fc 100644 --- a/tests/unit/gapic/monitoring_v3/test_group_service.py +++ b/tests/unit/gapic/monitoring_v3/test_group_service.py @@ -30,6 +30,7 @@ from google.api_core import gapic_v1 from google.api_core import grpc_helpers from google.api_core import grpc_helpers_async +from google.api_core import path_template from google.auth import credentials as ga_credentials from google.auth.exceptions import MutualTLSChannelError from google.cloud.monitoring_v3.services.group_service import GroupServiceAsyncClient @@ -2120,6 +2121,9 @@ def test_group_service_base_transport(): with pytest.raises(NotImplementedError): getattr(transport, method)(request=object()) + with pytest.raises(NotImplementedError): + transport.close() + @requires_google_auth_gte_1_25_0 def test_group_service_base_transport_with_credentials_file(): @@ -2615,3 +2619,49 @@ def test_client_withDEFAULT_CLIENT_INFO(): credentials=ga_credentials.AnonymousCredentials(), client_info=client_info, ) prep.assert_called_once_with(client_info) + + +@pytest.mark.asyncio +async def test_transport_close_async(): + client = GroupServiceAsyncClient( + credentials=ga_credentials.AnonymousCredentials(), transport="grpc_asyncio", + ) + with mock.patch.object( + type(getattr(client.transport, "grpc_channel")), "close" + ) as close: + async with client: + close.assert_not_called() + close.assert_called_once() + + +def test_transport_close(): + transports = { + "grpc": "_grpc_channel", + } + + for transport, close_name in transports.items(): + client = GroupServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + with mock.patch.object( + type(getattr(client.transport, close_name)), "close" + ) as close: + with client: + close.assert_not_called() + close.assert_called_once() + + +def test_client_ctx(): + transports = [ + "grpc", + ] + for transport in transports: + client = GroupServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + # Test client calls underlying transport. + with mock.patch.object(type(client.transport), "close") as close: + close.assert_not_called() + with client: + pass + close.assert_called() diff --git a/tests/unit/gapic/monitoring_v3/test_metric_service.py b/tests/unit/gapic/monitoring_v3/test_metric_service.py index 71e70e99..0451f291 100644 --- a/tests/unit/gapic/monitoring_v3/test_metric_service.py +++ b/tests/unit/gapic/monitoring_v3/test_metric_service.py @@ -34,6 +34,7 @@ from google.api_core import gapic_v1 from google.api_core import grpc_helpers from google.api_core import grpc_helpers_async +from google.api_core import path_template from google.auth import credentials as ga_credentials from google.auth.exceptions import MutualTLSChannelError from google.cloud.monitoring_v3.services.metric_service import MetricServiceAsyncClient @@ -2981,6 +2982,9 @@ def test_metric_service_base_transport(): with pytest.raises(NotImplementedError): getattr(transport, method)(request=object()) + with pytest.raises(NotImplementedError): + transport.close() + @requires_google_auth_gte_1_25_0 def test_metric_service_base_transport_with_credentials_file(): @@ -3538,3 +3542,49 @@ def test_client_withDEFAULT_CLIENT_INFO(): credentials=ga_credentials.AnonymousCredentials(), client_info=client_info, ) prep.assert_called_once_with(client_info) + + +@pytest.mark.asyncio +async def test_transport_close_async(): + client = MetricServiceAsyncClient( + credentials=ga_credentials.AnonymousCredentials(), transport="grpc_asyncio", + ) + with mock.patch.object( + type(getattr(client.transport, "grpc_channel")), "close" + ) as close: + async with client: + close.assert_not_called() + close.assert_called_once() + + +def test_transport_close(): + transports = { + "grpc": "_grpc_channel", + } + + for transport, close_name in transports.items(): + client = MetricServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + with mock.patch.object( + type(getattr(client.transport, close_name)), "close" + ) as close: + with client: + close.assert_not_called() + close.assert_called_once() + + +def test_client_ctx(): + transports = [ + "grpc", + ] + for transport in transports: + client = MetricServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + # Test client calls underlying transport. + with mock.patch.object(type(client.transport), "close") as close: + close.assert_not_called() + with client: + pass + close.assert_called() diff --git a/tests/unit/gapic/monitoring_v3/test_notification_channel_service.py b/tests/unit/gapic/monitoring_v3/test_notification_channel_service.py index 07ae251a..3c25e779 100644 --- a/tests/unit/gapic/monitoring_v3/test_notification_channel_service.py +++ b/tests/unit/gapic/monitoring_v3/test_notification_channel_service.py @@ -31,6 +31,7 @@ from google.api_core import gapic_v1 from google.api_core import grpc_helpers from google.api_core import grpc_helpers_async +from google.api_core import path_template from google.auth import credentials as ga_credentials from google.auth.exceptions import MutualTLSChannelError from google.cloud.monitoring_v3.services.notification_channel_service import ( @@ -3484,6 +3485,9 @@ def test_notification_channel_service_base_transport(): with pytest.raises(NotImplementedError): getattr(transport, method)(request=object()) + with pytest.raises(NotImplementedError): + transport.close() + @requires_google_auth_gte_1_25_0 def test_notification_channel_service_base_transport_with_credentials_file(): @@ -4030,3 +4034,49 @@ def test_client_withDEFAULT_CLIENT_INFO(): credentials=ga_credentials.AnonymousCredentials(), client_info=client_info, ) prep.assert_called_once_with(client_info) + + +@pytest.mark.asyncio +async def test_transport_close_async(): + client = NotificationChannelServiceAsyncClient( + credentials=ga_credentials.AnonymousCredentials(), transport="grpc_asyncio", + ) + with mock.patch.object( + type(getattr(client.transport, "grpc_channel")), "close" + ) as close: + async with client: + close.assert_not_called() + close.assert_called_once() + + +def test_transport_close(): + transports = { + "grpc": "_grpc_channel", + } + + for transport, close_name in transports.items(): + client = NotificationChannelServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + with mock.patch.object( + type(getattr(client.transport, close_name)), "close" + ) as close: + with client: + close.assert_not_called() + close.assert_called_once() + + +def test_client_ctx(): + transports = [ + "grpc", + ] + for transport in transports: + client = NotificationChannelServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + # Test client calls underlying transport. + with mock.patch.object(type(client.transport), "close") as close: + close.assert_not_called() + with client: + pass + close.assert_called() diff --git a/tests/unit/gapic/monitoring_v3/test_query_service.py b/tests/unit/gapic/monitoring_v3/test_query_service.py index 0e5c035f..045bc1d3 100644 --- a/tests/unit/gapic/monitoring_v3/test_query_service.py +++ b/tests/unit/gapic/monitoring_v3/test_query_service.py @@ -29,6 +29,7 @@ from google.api_core import gapic_v1 from google.api_core import grpc_helpers from google.api_core import grpc_helpers_async +from google.api_core import path_template from google.auth import credentials as ga_credentials from google.auth.exceptions import MutualTLSChannelError from google.cloud.monitoring_v3.services.query_service import QueryServiceAsyncClient @@ -883,6 +884,9 @@ def test_query_service_base_transport(): with pytest.raises(NotImplementedError): getattr(transport, method)(request=object()) + with pytest.raises(NotImplementedError): + transport.close() + @requires_google_auth_gte_1_25_0 def test_query_service_base_transport_with_credentials_file(): @@ -1358,3 +1362,49 @@ def test_client_withDEFAULT_CLIENT_INFO(): credentials=ga_credentials.AnonymousCredentials(), client_info=client_info, ) prep.assert_called_once_with(client_info) + + +@pytest.mark.asyncio +async def test_transport_close_async(): + client = QueryServiceAsyncClient( + credentials=ga_credentials.AnonymousCredentials(), transport="grpc_asyncio", + ) + with mock.patch.object( + type(getattr(client.transport, "grpc_channel")), "close" + ) as close: + async with client: + close.assert_not_called() + close.assert_called_once() + + +def test_transport_close(): + transports = { + "grpc": "_grpc_channel", + } + + for transport, close_name in transports.items(): + client = QueryServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + with mock.patch.object( + type(getattr(client.transport, close_name)), "close" + ) as close: + with client: + close.assert_not_called() + close.assert_called_once() + + +def test_client_ctx(): + transports = [ + "grpc", + ] + for transport in transports: + client = QueryServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + # Test client calls underlying transport. + with mock.patch.object(type(client.transport), "close") as close: + close.assert_not_called() + with client: + pass + close.assert_called() diff --git a/tests/unit/gapic/monitoring_v3/test_service_monitoring_service.py b/tests/unit/gapic/monitoring_v3/test_service_monitoring_service.py index 79db6f54..72e45fd8 100644 --- a/tests/unit/gapic/monitoring_v3/test_service_monitoring_service.py +++ b/tests/unit/gapic/monitoring_v3/test_service_monitoring_service.py @@ -29,6 +29,7 @@ from google.api_core import gapic_v1 from google.api_core import grpc_helpers from google.api_core import grpc_helpers_async +from google.api_core import path_template from google.auth import credentials as ga_credentials from google.auth.exceptions import MutualTLSChannelError from google.cloud.monitoring_v3.services.service_monitoring_service import ( @@ -3193,6 +3194,9 @@ def test_service_monitoring_service_base_transport(): with pytest.raises(NotImplementedError): getattr(transport, method)(request=object()) + with pytest.raises(NotImplementedError): + transport.close() + @requires_google_auth_gte_1_25_0 def test_service_monitoring_service_base_transport_with_credentials_file(): @@ -3733,3 +3737,49 @@ def test_client_withDEFAULT_CLIENT_INFO(): credentials=ga_credentials.AnonymousCredentials(), client_info=client_info, ) prep.assert_called_once_with(client_info) + + +@pytest.mark.asyncio +async def test_transport_close_async(): + client = ServiceMonitoringServiceAsyncClient( + credentials=ga_credentials.AnonymousCredentials(), transport="grpc_asyncio", + ) + with mock.patch.object( + type(getattr(client.transport, "grpc_channel")), "close" + ) as close: + async with client: + close.assert_not_called() + close.assert_called_once() + + +def test_transport_close(): + transports = { + "grpc": "_grpc_channel", + } + + for transport, close_name in transports.items(): + client = ServiceMonitoringServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + with mock.patch.object( + type(getattr(client.transport, close_name)), "close" + ) as close: + with client: + close.assert_not_called() + close.assert_called_once() + + +def test_client_ctx(): + transports = [ + "grpc", + ] + for transport in transports: + client = ServiceMonitoringServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + # Test client calls underlying transport. + with mock.patch.object(type(client.transport), "close") as close: + close.assert_not_called() + with client: + pass + close.assert_called() diff --git a/tests/unit/gapic/monitoring_v3/test_uptime_check_service.py b/tests/unit/gapic/monitoring_v3/test_uptime_check_service.py index bea25aea..40c4a60c 100644 --- a/tests/unit/gapic/monitoring_v3/test_uptime_check_service.py +++ b/tests/unit/gapic/monitoring_v3/test_uptime_check_service.py @@ -30,6 +30,7 @@ from google.api_core import gapic_v1 from google.api_core import grpc_helpers from google.api_core import grpc_helpers_async +from google.api_core import path_template from google.auth import credentials as ga_credentials from google.auth.exceptions import MutualTLSChannelError from google.cloud.monitoring_v3.services.uptime_check_service import ( @@ -2255,6 +2256,9 @@ def test_uptime_check_service_base_transport(): with pytest.raises(NotImplementedError): getattr(transport, method)(request=object()) + with pytest.raises(NotImplementedError): + transport.close() + @requires_google_auth_gte_1_25_0 def test_uptime_check_service_base_transport_with_credentials_file(): @@ -2767,3 +2771,49 @@ def test_client_withDEFAULT_CLIENT_INFO(): credentials=ga_credentials.AnonymousCredentials(), client_info=client_info, ) prep.assert_called_once_with(client_info) + + +@pytest.mark.asyncio +async def test_transport_close_async(): + client = UptimeCheckServiceAsyncClient( + credentials=ga_credentials.AnonymousCredentials(), transport="grpc_asyncio", + ) + with mock.patch.object( + type(getattr(client.transport, "grpc_channel")), "close" + ) as close: + async with client: + close.assert_not_called() + close.assert_called_once() + + +def test_transport_close(): + transports = { + "grpc": "_grpc_channel", + } + + for transport, close_name in transports.items(): + client = UptimeCheckServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + with mock.patch.object( + type(getattr(client.transport, close_name)), "close" + ) as close: + with client: + close.assert_not_called() + close.assert_called_once() + + +def test_client_ctx(): + transports = [ + "grpc", + ] + for transport in transports: + client = UptimeCheckServiceClient( + credentials=ga_credentials.AnonymousCredentials(), transport=transport + ) + # Test client calls underlying transport. + with mock.patch.object(type(client.transport), "close") as close: + close.assert_not_called() + with client: + pass + close.assert_called()