diff options
author | gjoranv <gjoranv@gmail.com> | 2023-08-17 15:23:04 +0200 |
---|---|---|
committer | gjoranv <gjoranv@gmail.com> | 2023-08-18 13:48:32 +0200 |
commit | d1ec754bceb31c541619fde39ecb5c6e1bcccbfe (patch) | |
tree | 80f46e36511151238c8dace2d661326d7f584204 /config-model | |
parent | 5c51af58b98c987975e3db62d9ed09d72b8188d8 (diff) |
Add Builder to MetricSet class
Diffstat (limited to 'config-model')
-rw-r--r-- | config-model/src/test/java/com/yahoo/vespa/model/admin/monitoring/MetricSetTest.java | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/admin/monitoring/MetricSetTest.java b/config-model/src/test/java/com/yahoo/vespa/model/admin/monitoring/MetricSetTest.java index 8235f45aaec..4fda553e39d 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/admin/monitoring/MetricSetTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/admin/monitoring/MetricSetTest.java @@ -1,6 +1,8 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.model.admin.monitoring; +import ai.vespa.metrics.Unit; +import ai.vespa.metrics.VespaMetrics; import ai.vespa.metrics.set.Metric; import ai.vespa.metrics.set.MetricSet; import com.google.common.collect.Sets; @@ -60,4 +62,50 @@ public class MetricSetTest { assertEquals(3, combinedMetric.dimensions.size()); assertEquals("parentCommonVal", combinedMetric.dimensions.get(COMMON_DIMENSION_KEY)); } + + @Test + void it_can_be_generated_from_builder() { + MetricSet metricSet = new MetricSet.Builder("test") + .metric("metric1") + .metric(TestMetrics.ENUM_METRIC.last()) + .metric(new Metric("metric2")) + .metrics(List.of(new Metric("metric3"))) + .metricSet(new MetricSet.Builder("child") + .metric("child_metric1") + .metric("child_metric2") + .build()) + .build(); + + Map<String, Metric> metrics = metricSet.getMetrics(); + assertEquals(6, metrics.size()); + assertNotNull(metrics.get("metric1")); + assertNotNull(metrics.get("emum-metric.last")); + assertNotNull(metrics.get("metric2")); + assertNotNull(metrics.get("metric3")); + assertNotNull(metrics.get("child_metric1")); + assertNotNull(metrics.get("child_metric1")); + } + + enum TestMetrics implements VespaMetrics { + ENUM_METRIC("emum-metric"); + + private final String name; + + TestMetrics(String name) { + this.name = name; + } + + public String baseName() { + return name; + } + + public Unit unit() { + return null; + } + + public String description() { + return null; + } + + } } |