Skip to content

Commit fa30b83

Browse files
author
lrhodes
committed
Improve Unit tests.
1 parent 2ed2ba4 commit fa30b83

1 file changed

Lines changed: 40 additions & 1 deletion

File tree

src/test/java/com/yahoo/sketches/kll/KllFloatsSketchTest.java

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,17 @@ public void empty() {
2424
Assert.assertTrue(Float.isNaN(sketch.getMinValue()));
2525
Assert.assertTrue(Float.isNaN(sketch.getMaxValue()));
2626
Assert.assertTrue(Float.isNaN(sketch.getQuantile(0.5)));
27+
Assert.assertNull(sketch.getQuantiles(new double[] {0}));
28+
Assert.assertNull(sketch.getPMF(new float[] {0}));
2729
Assert.assertNotNull(sketch.toString(true, true));
30+
Assert.assertNotNull(sketch.toString());
31+
}
32+
33+
@Test(expectedExceptions = SketchesArgumentException.class)
34+
public void checkBadGetQuantiles() {
35+
final KllFloatsSketch sketch = new KllFloatsSketch();
36+
sketch.update(1);
37+
sketch.getQuantile(-1.0);
2838
}
2939

3040
@Test
@@ -196,7 +206,25 @@ public void mergeEmptyLowerK() {
196206
Assert.assertEquals(sketch1.getMinValue(), 0f);
197207
Assert.assertEquals(sketch1.getMaxValue(), (float) (n - 1));
198208
Assert.assertEquals(sketch1.getQuantile(0.5), n / 2, (n / 2) * EPS_FOR_K_256);
199-
}
209+
210+
//merge the other way
211+
sketch2.merge(sketch1);
212+
Assert.assertFalse(sketch1.isEmpty());
213+
Assert.assertEquals(sketch1.getN(), n);
214+
Assert.assertEquals(sketch1.getMinValue(), 0f);
215+
Assert.assertEquals(sketch1.getMaxValue(), (float) (n - 1));
216+
Assert.assertEquals(sketch1.getQuantile(0.5), n / 2, (n / 2) * EPS_FOR_K_256);
217+
}
218+
219+
@Test
220+
public void checkMergeUseOtherMinValue() {
221+
final KllFloatsSketch sketch1 = new KllFloatsSketch();
222+
final KllFloatsSketch sketch2 = new KllFloatsSketch();
223+
sketch1.update(1);
224+
sketch2.update(2);
225+
sketch2.merge(sketch1);
226+
Assert.assertEquals(sketch2.getMinValue(), 1.0F);
227+
}
200228

201229
@SuppressWarnings("unused")
202230
@Test(expectedExceptions = SketchesArgumentException.class)
@@ -282,4 +310,15 @@ public void getMaxSerializedSizeBytes() {
282310
Assert.assertEquals(sizeBytes, 3160);
283311
}
284312

313+
@Test
314+
public void checkUbOnNumLevels() {
315+
Assert.assertEquals(KllHelper.ubOnNumLevels(0), 1);
316+
}
317+
318+
@Test
319+
public void checkIntCapAux() {
320+
final int lvlCap = KllHelper.levelCapacity(10, 100, 50, 8);
321+
Assert.assertEquals(lvlCap, 8);
322+
}
323+
285324
}

0 commit comments

Comments
 (0)