@Test void loadedClassCountIsCalculated() { when(this.runtimeBean.getLoadedClassCount()).thenReturn(10).thenReturn(9).thenReturn(11).thenReturn(10); this.cut.gather(); this.cut.gather(); this.cut.gather(); this.cut.gather(); ClassLoadingInformationData collector = (ClassLoadingInformationData) this.cut.get(); assertThat(collector.getMinLoadedClassCount(), is(9)); assertThat(collector.getMaxLoadedClassCount(), is(11)); assertThat(collector.getTotalLoadedClassCount(), is(40)); }
/** * {@inheritDoc} */ @Override protected void addFields(ClassLoadingInformationData data, Builder builder) { long count = data.getCount(); long loadedClassCount = data.getTotalLoadedClassCount() / count; long totalLoadedClassCount = data.getTotalTotalLoadedClassCount() / count; long unloadedClassCount = data.getTotalUnloadedClassCount() / count; // fields builder.addField(Series.ClassLoadingInfomation.FIELD_LOADED_CLASSES, loadedClassCount); builder.addField(Series.ClassLoadingInfomation.FIELD_TOTAL_LOADED_CLASSES, totalLoadedClassCount); builder.addField(Series.ClassLoadingInfomation.FIELD_UNLOADED_CLASSES, unloadedClassCount); }
@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.getTotalLoadedClassCount()).thenReturn(RandomUtils.nextInt()); when(data.getTotalTotalLoadedClassCount()).thenReturn(RandomUtils.nextLong()); when(data.getTotalUnloadedClassCount()).thenReturn(RandomUtils.nextLong()); Collection<Builder> pointBuilderCol = builder.createBuilders(data); assertThat(pointBuilderCol.size(), is(1)); Builder pointBuilder = pointBuilderCol.iterator().next(); assertThat(getMeasurement(pointBuilder), is(Series.ClassLoadingInfomation.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.ClassLoadingInfomation.FIELD_LOADED_CLASSES, (Object) ((long) data.getTotalLoadedClassCount() / data.getCount()))); assertThat(getFields(pointBuilder), hasEntry(Series.ClassLoadingInfomation.FIELD_TOTAL_LOADED_CLASSES, (Object) (data.getTotalTotalLoadedClassCount() / data.getCount()))); assertThat(getFields(pointBuilder), hasEntry(Series.ClassLoadingInfomation.FIELD_UNLOADED_CLASSES, (Object) (data.getTotalUnloadedClassCount() / data.getCount()))); }
/** * Updates the upper plot with the given input data. * * @param classLoadingData * The input data. */ private void addUpperPlotData(List<ClassLoadingInformationData> classLoadingData) { for (ClassLoadingInformationData data : classLoadingData) { int loadedClassAverage = data.getTotalLoadedClassCount() / data.getCount(); long totalLoadedClassAverage = data.getTotalTotalLoadedClassCount() / data.getCount(); loadedClasses.add(data.getTimeStamp().getTime(), loadedClassAverage, data.getMinLoadedClassCount(), data.getMaxLoadedClassCount(), false); totalLoadedClasses.add(data.getTimeStamp().getTime(), totalLoadedClassAverage, data.getMinTotalLoadedClassCount(), data.getMaxTotalLoadedClassCount(), false); } loadedClasses.fireSeriesChanged(); totalLoadedClasses.fireSeriesChanged(); }
assertThat(classLoadingInformationData.getCount(), is(3)); assertThat(classLoadingInformationData.getTotalLoadedClassCount(), is(4)); assertThat(classLoadingInformationData.getMinLoadedClassCount(), is(5)); assertThat(classLoadingInformationData.getMaxLoadedClassCount(), is(6));
assertThat(classLoadingInformationData.getCount(), is(0)); assertThat(classLoadingInformationData.getTotalLoadedClassCount(), is(0)); assertThat(classLoadingInformationData.getMinLoadedClassCount(), is(Integer.MAX_VALUE)); assertThat(classLoadingInformationData.getMaxLoadedClassCount(), is(0));
/** * {@inheritDoc} */ @Override public SystemSensorData get() { ClassLoadingInformationData newClassLoadingInformationData = new ClassLoadingInformationData(); newClassLoadingInformationData.setPlatformIdent(this.classLoadingInformationData.getPlatformIdent()); newClassLoadingInformationData.setSensorTypeIdent(this.classLoadingInformationData.getSensorTypeIdent()); newClassLoadingInformationData.setCount(this.classLoadingInformationData.getCount()); newClassLoadingInformationData.setTotalLoadedClassCount(this.classLoadingInformationData.getTotalLoadedClassCount()); newClassLoadingInformationData.setMinLoadedClassCount(this.classLoadingInformationData.getMinLoadedClassCount()); newClassLoadingInformationData.setMaxLoadedClassCount(this.classLoadingInformationData.getMaxLoadedClassCount()); newClassLoadingInformationData.setTotalTotalLoadedClassCount(this.classLoadingInformationData.getTotalTotalLoadedClassCount()); newClassLoadingInformationData.setMinTotalLoadedClassCount(this.classLoadingInformationData.getMinTotalLoadedClassCount()); newClassLoadingInformationData.setMaxTotalLoadedClassCount(this.classLoadingInformationData.getMaxTotalLoadedClassCount()); newClassLoadingInformationData.setTotalUnloadedClassCount(this.classLoadingInformationData.getTotalUnloadedClassCount()); newClassLoadingInformationData.setMinUnloadedClassCount(this.classLoadingInformationData.getMinUnloadedClassCount()); newClassLoadingInformationData.setMaxUnloadedClassCount(this.classLoadingInformationData.getMaxUnloadedClassCount()); newClassLoadingInformationData.setTimeStamp(this.classLoadingInformationData.getTimeStamp()); return newClassLoadingInformationData; }