blob: 243849bd93f0e01864be02041e13ac05e2b328b8 [file] [log] [blame]
#!/usr/bin/env fuchsia-vendored-python
# Copyright 2023 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Example metric test for the perf metric publishing code."""
import json
import os
import random
from fuchsia_base_test import fuchsia_base_test
from mobly import test_runner
import perf_publish.publish as publish
class ExampleMetricPublishing(fuchsia_base_test.FuchsiaBaseTest):
"""Example perf metric publishing tests"""
def test_example_metric_publishing(self) -> None:
"""Example that ensures we correctly publish an example metric."""
# TODO(b/307637269): improve this. This is an example not a test. We should place it in a
# better location and potentially improve it.
fuchsiaperf_data = [
{
"test_suite": "fuchsia.example",
"label": "ExampleMetric1",
"values": [10 + random.uniform(0, 1)],
"unit": "ms",
},
]
test_perf_file = os.path.join(self.log_path, "test.fuchsiaperf.json")
with open(test_perf_file, "w") as f:
json.dump(fuchsiaperf_data, f, indent=4)
publish.publish_fuchsiaperf(
[test_perf_file],
"fuchsia.example.txt",
)
if __name__ == "__main__":
test_runner.main()