/** * Tests the simple aggregation when objects are in different invocations. */ @Test public void simpleDifferentParentsAggregation() { InvocationAwareData i1 = getInvocationAwareData(); i1.addInvocationParentId(Long.valueOf(1)); InvocationAwareData i2 = getInvocationAwareData(); i2.addInvocationParentId(Long.valueOf(2)); i1.aggregateInvocationAwareData(i2); assertThat(i1.getObjectsInInvocationsCount(), is(equalTo(2))); assertThat(i1.getInvocationParentsIdSet().size(), is(equalTo(2))); assertThat(i1.getInvocationParentsIdSet(), contains(1L, 2L)); }
/** * Tests the simple aggregation when objects are in same invocations. */ @Test public void simpleSameParentsAggregation() { InvocationAwareData i1 = getInvocationAwareData(); i1.addInvocationParentId(Long.valueOf(1)); InvocationAwareData i2 = getInvocationAwareData(); i2.addInvocationParentId(Long.valueOf(1)); i1.aggregateInvocationAwareData(i2); assertThat(i1.getObjectsInInvocationsCount(), is(equalTo(2))); assertThat(i1.getInvocationParentsIdSet().size(), is(equalTo(1))); assertThat(i1.getInvocationParentsIdSet(), contains(1L)); }
/** * Tests the complicated aggregation when objects are in same invocations. */ @Test public void complicatedSameParentsAggregation() { InvocationAwareData i1 = getInvocationAwareData(); i1.addInvocationParentId(Long.valueOf(1)); InvocationAwareData i2 = getInvocationAwareData(); i2.addInvocationParentId(Long.valueOf(2)); i1.aggregateInvocationAwareData(i2); InvocationAwareData i3 = getInvocationAwareData(); i3.addInvocationParentId(Long.valueOf(1)); InvocationAwareData i4 = getInvocationAwareData(); i4.addInvocationParentId(Long.valueOf(2)); i3.aggregateInvocationAwareData(i4); i1.aggregateInvocationAwareData(i3); assertThat(i1.getObjectsInInvocationsCount(), is(equalTo(4))); assertThat(i1.getInvocationParentsIdSet().size(), is(equalTo(2))); assertThat(i1.getInvocationParentsIdSet(), contains(1L, 2L)); }
/** * Tests the complicated aggregation when objects are in different invocations. */ @Test public void complicatedDifferentParentsAggregation() { InvocationAwareData i1 = getInvocationAwareData(); i1.addInvocationParentId(Long.valueOf(1)); InvocationAwareData i2 = getInvocationAwareData(); i2.addInvocationParentId(Long.valueOf(2)); i1.aggregateInvocationAwareData(i2); InvocationAwareData i3 = getInvocationAwareData(); i3.addInvocationParentId(Long.valueOf(3)); InvocationAwareData i4 = getInvocationAwareData(); i4.addInvocationParentId(Long.valueOf(4)); i3.aggregateInvocationAwareData(i4); i1.aggregateInvocationAwareData(i3); assertThat(i1.getObjectsInInvocationsCount(), is(equalTo(4))); assertThat(i1.getInvocationParentsIdSet().size(), is(equalTo(4))); assertThat(i1.getInvocationParentsIdSet(), contains(1L, 2L, 3L, 4L)); }
/** * Aggregates the values given in the supplied timer data parameter to the objects data. * * @param timerData * Data to be aggregated into current object. */ public void aggregateTimerData(TimerData timerData) { super.aggregateInvocationAwareData(timerData); this.setCount(this.getCount() + timerData.getCount()); this.setDuration(this.getDuration() + timerData.getDuration()); this.calculateMax(timerData.getMax()); this.calculateMin(timerData.getMin()); if (timerData.isCpuMetricDataAvailable()) { this.setCpuDuration(this.getCpuDuration() + timerData.getCpuDuration()); this.calculateCpuMax(timerData.getCpuMax()); this.calculateCpuMin(timerData.getCpuMin()); } if (timerData.isExclusiveTimeDataAvailable()) { this.addExclusiveDuration(timerData.getExclusiveDuration()); this.setExclusiveCount(this.getExclusiveCount() + timerData.getExclusiveCount()); this.calculateExclusiveMax(timerData.getExclusiveMax()); this.calculateExclusiveMin(timerData.getExclusiveMin()); } this.charting = this.charting | timerData.isCharting(); }