@Test
public void happyPath() throws Exception {
when(cachedDataService.getPlatformIdentForId(PLATFORM_ID)).thenReturn(platformIdent);
long time = RandomUtils.nextLong();
when(data.getPlatformIdent()).thenReturn(PLATFORM_ID);
when(data.getTimeStamp()).thenReturn(new Timestamp(time));
when(data.getCount()).thenReturn(5);
when(data.getTotalCpuUsage()).thenReturn(RandomUtils.nextFloat());
when(data.getMinCpuUsage()).thenReturn(RandomUtils.nextFloat());
when(data.getMaxCpuUsage()).thenReturn(RandomUtils.nextFloat());
Collection<Builder> pointBuilderCol = builder.createBuilders(data);
assertThat(pointBuilderCol.size(), is(1));
Builder pointBuilder = pointBuilderCol.iterator().next();
assertThat(getMeasurement(pointBuilder), is(Series.CpuInformation.NAME));
assertThat(getTime(pointBuilder), is(time));
assertThat(getPrecision(pointBuilder), is(TimeUnit.MILLISECONDS));
assertThat(getTags(pointBuilder), hasEntry(Series.TAG_AGENT_ID, String.valueOf(PLATFORM_ID)));
assertThat(getTags(pointBuilder), hasEntry(Series.TAG_AGENT_NAME, String.valueOf(AGENT_NAME)));
assertThat(getFields(pointBuilder), hasEntry(Series.CpuInformation.FIELD_AVG_CPU_UTIL, (Object) Double.valueOf(data.getTotalCpuUsage() / data.getCount())));
assertThat(getFields(pointBuilder), hasEntry(Series.CpuInformation.FIELD_MAX_CPU_UTIL, (Object) Double.valueOf(data.getMaxCpuUsage())));
assertThat(getFields(pointBuilder), hasEntry(Series.CpuInformation.FIELD_MIN_CPU_UTIL, (Object) Double.valueOf(data.getMinCpuUsage())));
}