pw_metric: Fix path to MetricService

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>
diff --git a/pw_metric/py/metric_parser_test.py b/pw_metric/py/metric_parser_test.py
index f8a5cfa..ea5b8d2 100644
--- a/pw_metric/py/metric_parser_test.py
+++ b/pw_metric/py/metric_parser_test.py
@@ -39,10 +39,12 @@
         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
@@ -67,7 +69,7 @@
 
     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,
@@ -77,7 +79,7 @@
     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(
@@ -96,7 +98,7 @@
                 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(
@@ -116,7 +118,7 @@
             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(
@@ -140,7 +142,7 @@
                                       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)
         ]
@@ -167,7 +169,7 @@
                                       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(
@@ -192,7 +194,7 @@
                                       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),
         ]
@@ -222,7 +224,7 @@
                                       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),
         ]
@@ -238,14 +240,14 @@
                 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),
         ]
diff --git a/pw_metric/py/pw_metric/metric_parser.py b/pw_metric/py/pw_metric/metric_parser.py
index 4566db3..d4f281d 100644
--- a/pw_metric/py/pw_metric/metric_parser.py
+++ b/pw_metric/py/pw_metric/metric_parser.py
@@ -49,7 +49,7 @@
     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)