def test_update_log_metric(self): # Setup Expected Response name = "name3373707" description = "description-1724546052" filter_ = "filter-1274492040" value_extractor = "valueExtractor2047672534" expected_response = { "name": name, "description": description, "filter": filter_, "value_extractor": value_extractor, } expected_response = logging_metrics_pb2.LogMetric(**expected_response) # Mock the API response channel = ChannelStub(responses=[expected_response]) patch = mock.patch("google.api_core.grpc_helpers.create_channel") with patch as create_channel: create_channel.return_value = channel client = logging_v2.MetricsServiceV2Client() # Setup Request metric_name = client.metric_path("[PROJECT]", "[METRIC]") metric = {} response = client.update_log_metric(metric_name, metric) assert expected_response == response assert len(channel.requests) == 1 expected_request = logging_metrics_pb2.UpdateLogMetricRequest( metric_name=metric_name, metric=metric) actual_request = channel.requests[0][1] assert expected_request == actual_request
def test_update_log_metric(self): # Setup Expected Response name = 'name3373707' description = 'description-1724546052' filter_ = 'filter-1274492040' value_extractor = 'valueExtractor2047672534' expected_response = { 'name': name, 'description': description, 'filter': filter_, 'value_extractor': value_extractor } expected_response = logging_metrics_pb2.LogMetric(**expected_response) # Mock the API response channel = ChannelStub(responses=[expected_response]) patch = mock.patch('google.api_core.grpc_helpers.create_channel') with patch as create_channel: create_channel.return_value = channel client = logging_v2.MetricsServiceV2Client() # Setup Request metric_name = client.metric_path('[PROJECT]', '[METRIC]') metric = {} response = client.update_log_metric(metric_name, metric) assert expected_response == response assert len(channel.requests) == 1 expected_request = logging_metrics_pb2.UpdateLogMetricRequest( metric_name=metric_name, metric=metric) actual_request = channel.requests[0][1] assert expected_request == actual_request
def test_metric_update(self): channel, api = self.make_metrics_api() channel.UpdateLogMetric.response = logging_metrics_pb2.LogMetric( name=self.METRIC_PATH, description=self.DESCRIPTION, filter=FILTER ) response = api.metric_update( PROJECT, self.METRIC_NAME, FILTER, self.DESCRIPTION ) # Check the response assert response == { "name": self.METRIC_PATH, "filter": FILTER, "description": self.DESCRIPTION, } # Check the request assert len(channel.UpdateLogMetric.requests) == 1 request = channel.UpdateLogMetric.requests[0] assert request.metric_name == self.METRIC_PATH assert request.metric.name == self.METRIC_PATH assert request.metric.filter == FILTER assert request.metric.description == self.DESCRIPTION
def test_create_log_metric(self): # Setup Expected Response name = 'name3373707' description = 'description-1724546052' filter_ = 'filter-1274492040' value_extractor = 'valueExtractor2047672534' expected_response = { 'name': name, 'description': description, 'filter': filter_, 'value_extractor': value_extractor } expected_response = logging_metrics_pb2.LogMetric(**expected_response) # Mock the API response channel = ChannelStub(responses=[expected_response]) client = logging_v2.MetricsServiceV2Client(channel=channel) # Setup Request parent = client.project_path('[PROJECT]') metric = {} response = client.create_log_metric(parent, metric) assert expected_response == response assert len(channel.requests) == 1 expected_request = logging_metrics_pb2.CreateLogMetricRequest( parent=parent, metric=metric) actual_request = channel.requests[0][1] assert expected_request == actual_request
def test_list_metrics(self): channel, api = self.make_metrics_api() sink_msg = logging_metrics_pb2.LogMetric( name=self.METRIC_PATH, description=self.DESCRIPTION, filter=FILTER ) channel.ListLogMetrics.response = logging_metrics_pb2.ListLogMetricsResponse( metrics=[sink_msg] ) result = api.list_metrics(PROJECT) metrics = list(result) # Check the response assert len(metrics) == 1 metric = metrics[0] assert isinstance(metric, google.cloud.logging.metric.Metric) assert metric.name == self.METRIC_PATH assert metric.description == self.DESCRIPTION assert metric.filter_ == FILTER # Check the request assert len(channel.ListLogMetrics.requests) == 1 request = channel.ListLogMetrics.requests[0] assert request.parent == PROJECT_PATH