MetricsAnnotations { public static MetricsSource makeSource(Object source) { return new MetricsSourceBuilder(source, DefaultMetricsFactory.getAnnotatedMetricsFactory()).build(); }  static MetricsSource makeSource(Object source); static MetricsSourceBuilder newSourceBuilder(Object source);  }
@Test public void testFields() { MyMetrics metrics = new MyMetrics(); MetricsSource source = MetricsAnnotations.makeSource(metrics); metrics.c1.incr(); metrics.c2.incr(); metrics.g1.incr(); metrics.g2.incr(); metrics.g3.incr(); metrics.g4.incr(); metrics.r1.add(1); metrics.s1.add(1); metrics.rs1.add("rs1", 1); MetricsRecordBuilder rb = getMetrics(source); verify(rb).addCounter(info("C1", "C1"), 1); verify(rb).addCounter(info("Counter2", "Counter2 desc"), 1L); verify(rb).addGauge(info("G1", "G1"), 1); verify(rb).addGauge(info("G2", "G2"), 1); verify(rb).addGauge(info("G3", "g3 desc"), 1L); verify(rb).addGauge(info("G4", "g4 desc"), 1f); verify(rb).addCounter(info("R1NumOps", "Number of ops for r1"), 1L); verify(rb).addGauge(info("R1AvgTime", "Average time for r1"), 1.0); verify(rb).addCounter(info("S1NumOps", "Number of ops for s1"), 1L); verify(rb).addGauge(info("S1AvgTime", "Average time for s1"), 1.0); verify(rb).addCounter(info("Rs1NumOps", "Number of ops for rs1"), 1L); verify(rb).addGauge(info("Rs1AvgTime", "Average time for rs1"), 1.0); }