1 package com.google.code.jetm.reporting;
2
3 import static org.fest.assertions.Assertions.assertThat;
4 import static org.mockito.Matchers.eq;
5 import static org.mockito.Mockito.mock;
6 import static org.mockito.Mockito.verify;
7
8 import java.io.StringWriter;
9 import java.util.Collection;
10 import java.util.Collections;
11 import java.util.Map;
12
13 import org.junit.Test;
14 import org.mockito.ArgumentCaptor;
15
16 import etm.core.aggregation.Aggregate;
17
18
19
20
21
22
23
24
25 public class BindingMeasurementRendererTest {
26
27
28
29 @SuppressWarnings({ "rawtypes", "unchecked" })
30 @Test
31 public void testRender() {
32 final StringWriter writer = mock(StringWriter.class);
33 final Aggregate aggregate = mock(Aggregate.class);
34 final AggregateBinder binder = mock(AggregateBinder.class);
35 final Map<String, Aggregate> points = Collections.singletonMap("test", aggregate);
36
37 final BindingMeasurementRenderer renderer = new BindingMeasurementRenderer(binder, writer);
38 renderer.render(points);
39
40 final ArgumentCaptor<Collection> aggregatesCaptor = ArgumentCaptor.forClass(Collection.class);
41 verify(binder).bind(aggregatesCaptor.capture(), eq(writer));
42 assertThat(aggregatesCaptor.getValue()).containsOnly(aggregate);
43 }
44
45 }