You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by wu...@apache.org on 2018/03/31 07:17:20 UTC
[incubator-servicecomb-java-chassis] 02/07: SCB-384 add summary in
MeasurementNode
This is an automated email from the ASF dual-hosted git repository.
wujimin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git
commit 5f9bdc8736d37b1073322614a43fa49af926742c
Author: wujimin <wu...@huawei.com>
AuthorDate: Fri Mar 23 16:38:10 2018 +0800
SCB-384 add summary in MeasurementNode
---
.../metrics/publish/spectator/MeasurementNode.java | 9 +++++++++
.../metrics/publish/spectator/TestMeasurementNode.java | 15 +++++++++++++++
2 files changed, 24 insertions(+)
diff --git a/foundations/foundation-metrics/src/main/java/org/apache/servicecomb/foundation/metrics/publish/spectator/MeasurementNode.java b/foundations/foundation-metrics/src/main/java/org/apache/servicecomb/foundation/metrics/publish/spectator/MeasurementNode.java
index 2d82113..0518ebe 100644
--- a/foundations/foundation-metrics/src/main/java/org/apache/servicecomb/foundation/metrics/publish/spectator/MeasurementNode.java
+++ b/foundations/foundation-metrics/src/main/java/org/apache/servicecomb/foundation/metrics/publish/spectator/MeasurementNode.java
@@ -82,4 +82,13 @@ public class MeasurementNode {
public void addMeasurement(Measurement measurement) {
measurements.add(measurement);
}
+
+ public double summary() {
+ double result = 0;
+ for (Measurement measurement : measurements) {
+ result += measurement.value();
+ }
+
+ return result;
+ }
}
diff --git a/foundations/foundation-metrics/src/test/java/org/apache/servicecomb/foundation/metrics/publish/spectator/TestMeasurementNode.java b/foundations/foundation-metrics/src/test/java/org/apache/servicecomb/foundation/metrics/publish/spectator/TestMeasurementNode.java
index cf55e56..585fd9a 100644
--- a/foundations/foundation-metrics/src/test/java/org/apache/servicecomb/foundation/metrics/publish/spectator/TestMeasurementNode.java
+++ b/foundations/foundation-metrics/src/test/java/org/apache/servicecomb/foundation/metrics/publish/spectator/TestMeasurementNode.java
@@ -25,6 +25,7 @@ import org.junit.Test;
import com.netflix.spectator.api.Measurement;
+import mockit.Expectations;
import mockit.Mocked;
public class TestMeasurementNode {
@@ -79,4 +80,18 @@ public class TestMeasurementNode {
Assert.assertThat(node.getMeasurements(), Matchers.contains(measurement));
}
+
+ @Test
+ public void summary(@Mocked Measurement measurement) {
+ new Expectations() {
+ {
+ measurement.value();
+ result = 10;
+ }
+ };
+ node.addMeasurement(measurement);
+ node.addMeasurement(measurement);
+
+ Assert.assertEquals(20, node.summary(), 0);
+ }
}
--
To stop receiving notification emails like this one, please contact
wujimin@apache.org.