Source code
Revision control
Copy as Markdown
Other Tools
#!/usr/bin/env vpython3
# Copyright 2024 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
""" A metric implementation to record the raw inputs. """
from google.protobuf.timestamp_pb2 import Timestamp
from measure import Measure
from test_script_metrics_pb2 import TestScriptMetric
class DataPoints(Measure):
def __init__(self, name: str) -> None:
self._name = name
self._points = []
def record(self, value: float) -> None:
point = TestScriptMetric.DataPoint()
point.value = value
# The function name is confusing, it updates itself to the current time.
point.timestamp.GetCurrentTime()
self._points.append(point)
def dump(self) -> TestScriptMetric:
result = TestScriptMetric()
result.name = self._name
result.points.points.extend(self._points)
return result