@Test public void testSetMin() { MetricTelemetry telemetry = new MetricTelemetry("MockName", 120.1); telemetry.setMin(new Double(1)); assertEquals(new Double(1), telemetry.getMin()); }
@Override public Telemetry apply(BaseTelemetry bt) { Preconditions.checkNotNull(bt); MetricTelemetry t = (MetricTelemetry) bt; final Metric.Builder mb = Metric.newBuilder() .setVer(t.getVer()); if (t.getProperties() != null) mb.putAllProperties(t.getProperties()); DataPoint.Builder dpb = DataPoint.newBuilder() .setValue(t.getValue()); final DataPointType dpType = transformDataPointType(t.getKind()); if (dpType != DataPointType.UNRECOGNIZED) dpb.setKind(dpType); if (t.getCount() != null) dpb.setCount(Int32Value.of(t.getCount())); if (t.getMin() != null) dpb.setMin(DoubleValue.of(t.getMin())); if (t.getMax() != null) dpb.setMax(DoubleValue.of(t.getMax())); if (t.getStandardDeviation() != null) dpb.setStdDev(DoubleValue.of(t.getStandardDeviation())); if (t.getName() != null) dpb.setName(t.getName()); mb.addMetrics(dpb); return telemetryBuilderWithStandardFields(t).setMetric(mb).build(); } });
@Test public void testTrackMetricWithAllValues() { Map<String, String> props = new HashMap<String, String>() {{ put("key1", "value1"); put("key2", "value2"); }}; final String name = "MyMetric"; final double value = 1.01; final Integer sampleCount = 2; final Double min = 0.01; final Double max = 1.0; final Double stdDev = 0.636396; client.trackMetric(name, value, sampleCount, min, max, stdDev, props); MetricTelemetry mt = (MetricTelemetry) verifyAndGetLastEventSent(); assertEquals("getName", name, mt.getName()); assertEquals("getValue", value, mt.getValue(), Math.ulp(value)); assertEquals("getMin", min, mt.getMin()); assertEquals("getMax", max, mt.getMax()); assertEquals("getStandardDeviation", stdDev, mt.getStandardDeviation()); assertNotNull("getProperties should be non-null", mt.getProperties()); for (String key : props.keySet()) { assertTrue("metric properties contains key", mt.getProperties().containsKey(key)); assertEquals("metric properties key/value pair did not match", props.get(key), mt.getProperties().get(key)); } }
@Test public void testTrackMetricWithNameAndValue() { final String name = "Metric"; final double value = 1.11; client.trackMetric(name, value); MetricTelemetry mt = (MetricTelemetry) verifyAndGetLastEventSent(); assertEquals("getName", name, mt.getName()); assertEquals("getValue", value, mt.getValue(), Math.ulp(value)); assertNull("getCount should be null", mt.getCount()); assertNull("getMin should be null", mt.getMin()); assertNull("getMax should be null", mt.getMax()); assertNull("getStandardDeviation should be null", mt.getStandardDeviation()); assertTrue("properties should be empty", mt.getProperties().isEmpty()); }
@Test public void testEmptyCtor() { MetricTelemetry telemetry = new MetricTelemetry(); assertNull(telemetry.getName()); assertEquals(0.0, telemetry.getValue(), Math.ulp(0.0)); assertNull(telemetry.getCount()); assertNull(telemetry.getMin()); assertNull(telemetry.getMax()); assertNull(telemetry.getStandardDeviation()); }
@Test public void testTrackMetricAggregateWithSomeNulls() { Map<String, String> propsIsNull = null; final String name = "MyMetricHasNulls"; final double value = 1.02; final Integer sampleCount = 3; final Double minIsNull = null; final Double max = 0.99; final Double stdDevIsNull = null; client.trackMetric(name, value, sampleCount, minIsNull, max, stdDevIsNull, propsIsNull); MetricTelemetry mt = (MetricTelemetry) verifyAndGetLastEventSent(); assertEquals("getName", name, mt.getName()); assertEquals("getValue", value, mt.getValue(), Math.ulp(value)); assertNull("getMin should be null", mt.getMin()); assertEquals("getMax", max, mt.getMax()); assertNull("getStandardDeviation should be null", mt.getStandardDeviation()); assertNotNull("getProperties should be null", mt.getProperties()); assertEquals("properties size", 0, mt.getProperties().size()); }
@Test public void testCtor() { MetricTelemetry telemetry = new MetricTelemetry("MockName", 120.1); assertEquals("MockName", telemetry.getName()); assertEquals(120.1, telemetry.getValue(), Math.ulp(120.1)); assertNull(telemetry.getCount()); assertNull(telemetry.getCount()); assertNull(telemetry.getMin()); assertNull(telemetry.getMax()); assertNull(telemetry.getStandardDeviation()); }