Skip to content

Commit

Permalink
pw_metric: Fix path to MetricService
Browse files Browse the repository at this point in the history
A recent change moved service to .protos namespace. Making matching
change to metric parser and metric parser test.

Link to the CL:
https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/101169

Bug: 243708223

Change-Id: I8310c0e6afbe0dbdedca0eaff47973e16a1f1538
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/108556
Reviewed-by: Keir Mierle <keir@google.com>
Reviewed-by: Carlos Chinchilla <cachinchilla@google.com>
Commit-Queue: Dmitry Lukyantsev <dmitrylu@google.com>
  • Loading branch information
Dmitry Lukyantsev authored and CQ Bot Account committed Sep 2, 2022
1 parent 2b9ac8f commit 34d3f73
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 15 deletions.
30 changes: 16 additions & 14 deletions pw_metric/py/metric_parser_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,12 @@ def setUp(self) -> None:
self.rpcs = mock.Mock()
self.rpcs.pw = mock.Mock()
self.rpcs.pw.metric = mock.Mock()
self.rpcs.pw.metric.MetricService = mock.Mock()
self.rpcs.pw.metric.MetricService.Get = mock.Mock()
self.rpcs.pw.metric.MetricService.Get.return_value = mock.Mock()
self.rpcs.pw.metric.MetricService.Get.return_value.status = Status.OK
self.rpcs.pw.metric.proto = mock.Mock()
self.rpcs.pw.metric.proto.MetricService = mock.Mock()
self.rpcs.pw.metric.proto.MetricService.Get = mock.Mock()
self.rpcs.pw.metric.proto.MetricService.Get.return_value = mock.Mock()
self.rpcs.pw.metric.proto.MetricService.Get.return_value.status = (
Status.OK)
# Creating a group and metric name for better identification.
self.log = 0xa7c43965
self.total_created = 0x22198280
Expand All @@ -67,7 +69,7 @@ def test_invalid_detokenizer(self) -> None:

def test_bad_stream_status(self) -> None:
"""Test stream response has a status other than OK."""
self.rpcs.pw.metric.MetricService.Get.return_value.status = (
self.rpcs.pw.metric.proto.MetricService.Get.return_value.status = (
Status.ABORTED)
self.assertEqual({},
parse_metrics(self.rpcs, self.detokenize,
Expand All @@ -77,7 +79,7 @@ def test_bad_stream_status(self) -> None:
def test_parse_metrics(self) -> None:
"""Test metrics being parsed and recorded."""
# Loading metric into RPC.
self.rpcs.pw.metric.MetricService.Get.return_value.responses = [
self.rpcs.pw.metric.proto.MetricService.Get.return_value.responses = [
metric_service_pb2.MetricResponse(metrics=self.metric)
]
self.assertEqual(
Expand All @@ -96,7 +98,7 @@ def test_three_metric_names(self) -> None:
token_path=[self.log, self.min_queue_remaining],
string_path='N/A',
as_float=1.0))
self.rpcs.pw.metric.MetricService.Get.return_value.responses = [
self.rpcs.pw.metric.proto.MetricService.Get.return_value.responses = [
metric_service_pb2.MetricResponse(metrics=self.metric)
]
self.assertEqual(
Expand All @@ -116,7 +118,7 @@ def test_inserting_unknown_token(self) -> None:
metric_service_pb2.Metric(token_path=[0x007, self.total_dropped],
string_path='N/A',
as_float=1.0))
self.rpcs.pw.metric.MetricService.Get.return_value.responses = [
self.rpcs.pw.metric.proto.MetricService.Get.return_value.responses = [
metric_service_pb2.MetricResponse(metrics=self.metric)
]
self.assertEqual(
Expand All @@ -140,7 +142,7 @@ def test_multiple_metric_response(self) -> None:
string_path='N/A',
as_float=1.0)
]
self.rpcs.pw.metric.MetricService.Get.return_value.responses = [
self.rpcs.pw.metric.proto.MetricService.Get.return_value.responses = [
metric_service_pb2.MetricResponse(metrics=self.metric),
metric_service_pb2.MetricResponse(metrics=metric)
]
Expand All @@ -167,7 +169,7 @@ def test_paths_longer_than_two(self) -> None:
string_path='N/A',
as_float=1.0),
]
self.rpcs.pw.metric.MetricService.Get.return_value.responses = [
self.rpcs.pw.metric.proto.MetricService.Get.return_value.responses = [
metric_service_pb2.MetricResponse(metrics=longest_metric),
]
self.assertEqual(
Expand All @@ -192,7 +194,7 @@ def test_paths_longer_than_two(self) -> None:
string_path='N/A',
as_float=2.0),
]
self.rpcs.pw.metric.MetricService.Get.return_value.responses = [
self.rpcs.pw.metric.proto.MetricService.Get.return_value.responses = [
metric_service_pb2.MetricResponse(metrics=longest_metric),
metric_service_pb2.MetricResponse(metrics=metric),
]
Expand Down Expand Up @@ -222,7 +224,7 @@ def test_conflicting_keys(self) -> None:
as_float=1.0),
]
# Creates a conflict at log/total_created, should throw an error.
self.rpcs.pw.metric.MetricService.Get.return_value.responses = [
self.rpcs.pw.metric.proto.MetricService.Get.return_value.responses = [
metric_service_pb2.MetricResponse(metrics=longest_metric),
metric_service_pb2.MetricResponse(metrics=self.metric),
]
Expand All @@ -238,14 +240,14 @@ def test_conflicting_logs(self) -> None:
as_float=1.0),
]
# Creates a duplicate metric for log/total_created.
self.rpcs.pw.metric.MetricService.Get.return_value.responses = [
self.rpcs.pw.metric.proto.MetricService.Get.return_value.responses = [
metric_service_pb2.MetricResponse(metrics=longest_metric),
metric_service_pb2.MetricResponse(metrics=self.metric),
]
parse_metrics(self.rpcs, self.detokenize, self.rpc_timeout_s)
self.assertRaises(ValueError, msg='Expected Value Error.')
# Duplicate metrics being loaded.
self.rpcs.pw.metric.MetricService.Get.return_value.responses = [
self.rpcs.pw.metric.proto.MetricService.Get.return_value.responses = [
metric_service_pb2.MetricResponse(metrics=self.metric),
metric_service_pb2.MetricResponse(metrics=self.metric),
]
Expand Down
2 changes: 1 addition & 1 deletion pw_metric/py/pw_metric/metric_parser.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ def parse_metrics(rpcs: Any, detokenizer: Optional[detokenize.Detokenizer],
if not detokenizer:
_LOG.error('No metrics token database set.')
return metrics
stream_response = rpcs.pw.metric.MetricService.Get(
stream_response = rpcs.pw.metric.proto.MetricService.Get(
pw_rpc_timeout_s=timeout_s)
if not stream_response.status.ok():
_LOG.error('Unexpected status %s', stream_response.status)
Expand Down

0 comments on commit 34d3f73

Please sign in to comment.