Example #1
0
 @Test
 public void testPercentiles50NoWrap() {
   StatsBuffer buffer = getNoWrap();
   double[] percentiles = buffer.getPercentileValues();
   // testNG does not give good errors if we do assertEquals on the two arrays
   assertEquals(percentiles[0], 250.5);
 }
Example #2
0
 // Before fix this would throw an ArrayIndexOutOfBoundException
 @Test
 public void testCountOverflow() throws Exception {
   StatsBuffer buffer = new StatsBuffer(SIZE, PERCENTILES);
   setCount(buffer, Integer.MAX_VALUE);
   buffer.record(1);
   buffer.record(2);
 }
Example #3
0
 StatsBuffer getWithWrap() {
   StatsBuffer buffer = new StatsBuffer(SIZE, PERCENTILES);
   for (int i = SIZE * 2; i > 0; --i) {
     buffer.record(i);
   }
   buffer.computeStats();
   return buffer;
 }
Example #4
0
  @Test
  public void testEmptyBuffer() {
    StatsBuffer buffer = new StatsBuffer(SIZE, PERCENTILES);
    assertEmpty(buffer);

    buffer.computeStats();
    assertEmpty(buffer);
  }
Example #5
0
  StatsBuffer getNoWrap() {
    StatsBuffer buffer = new StatsBuffer(SIZE, PERCENTILES);

    int max = SIZE / 2;
    for (int i = 0; i <= max; ++i) {
      buffer.record(i);
    }

    buffer.computeStats();

    return buffer;
  }
Example #6
0
  void assertEmpty(StatsBuffer buffer) {
    assertEquals(buffer.getCount(), 0);
    assertEquals(buffer.getTotalTime(), 0);
    assertEquals(buffer.getMax(), 0);
    assertEquals(buffer.getMin(), 0);

    // the following values could be NaN
    assertEquals(buffer.getMean(), 0.0);
    assertEquals(buffer.getVariance(), 0.0);
    assertEquals(buffer.getStdDev(), 0.0);
    assertEquals(buffer.getPercentileValues()[0], 0.0);
  }
Example #7
0
 @Test
 public void testPercentiles99NoWrap() {
   StatsBuffer buffer = getNoWrap();
   double[] percentiles = buffer.getPercentileValues();
   assertEquals(percentiles[2], 495.99);
 }
Example #8
0
 @Test
 public void testStdDevNoWrap() {
   StatsBuffer buffer = getNoWrap();
   assertEquals(buffer.getStdDev(), 144.62595, 1e-4);
 }
Example #9
0
 @Test
 public void testMinWrap() {
   StatsBuffer buffer = getWithWrap();
   assertEquals(buffer.getMin(), 1);
 }
Example #10
0
 @Test
 public void testTotalNoWrap() {
   StatsBuffer buffer = getNoWrap();
   assertEquals(buffer.getTotalTime(), SIZE / 2 * (SIZE / 2 + 1) / 2);
 }
Example #11
0
 @Test
 public void testVarianceNoWrap() {
   StatsBuffer buffer = getNoWrap();
   assertEquals(buffer.getVariance(), 20916.66667, 1e-4);
 }
Example #12
0
 @Test
 public void testMeanNoWrap() {
   StatsBuffer buffer = getNoWrap();
   assertEquals(buffer.getMean(), SIZE / 4.0);
 }
Example #13
0
 @Test
 public void testCountNoWrap() {
   StatsBuffer buffer = getNoWrap();
   assertEquals(buffer.getCount(), SIZE / 2 + 1);
 }
Example #14
0
 @Test
 public void testMaxNoWrap() {
   StatsBuffer buffer = getNoWrap();
   assertEquals(buffer.getMax(), SIZE / 2);
 }
Example #15
0
 @Test
 public void testMinNoWrap() {
   StatsBuffer buffer = getNoWrap();
   assertEquals(buffer.getMin(), 0);
 }
Example #16
0
 @Test
 public void testTotalWrap() {
   StatsBuffer buffer = getWithWrap();
   assertEquals(buffer.getTotalTime(), EXPECTED_TOTAL_WRAP);
 }
Example #17
0
 @Test
 public void testCountWrap() {
   StatsBuffer buffer = getWithWrap();
   assertEquals(buffer.getCount(), SIZE);
 }
Example #18
0
 // Used to access private count field via reflection so we can quickly simulate
 // a count that will cause an integer overflow.
 private void setCount(StatsBuffer buffer, int v) throws Exception {
   Class<?> cls = buffer.getClass();
   Field field = cls.getDeclaredField("pos");
   field.setAccessible(true);
   field.set(buffer, v);
 }
Example #19
0
 @Test
 public void testPercentiles995Wrap() {
   StatsBuffer buffer = getWithWrap();
   double[] percentiles = buffer.getPercentileValues();
   assertEquals(percentiles[3], 996.0);
 }
Example #20
0
 @Test
 public void testStdDevWrap() {
   StatsBuffer buffer = getWithWrap();
   assertEquals(buffer.getStdDev(), Math.sqrt(EXPECTED_VARIANCE_WRAP), 1e-4);
 }
Example #21
0
 @Test
 public void testVarianceWrap() {
   StatsBuffer buffer = getWithWrap();
   assertEquals(buffer.getVariance(), EXPECTED_VARIANCE_WRAP, 1e-4);
 }
Example #22
0
 @Test
 public void testMeanWrap() {
   StatsBuffer buffer = getWithWrap();
   assertEquals(buffer.getMean(), (double) EXPECTED_TOTAL_WRAP / SIZE);
 }