From 9bf393291e932eec42a26c4dc6a6e2f044fbb1a6 Mon Sep 17 00:00:00 2001 From: Giorgos Stamatelatos Date: Thu, 23 Jul 2020 17:03:57 +0300 Subject: [PATCH] Fix default weight per implementation on tests (#37) --- .../sampling/WeightedRandomSamplingTest.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/test/java/gr/james/sampling/WeightedRandomSamplingTest.java b/src/test/java/gr/james/sampling/WeightedRandomSamplingTest.java index ce70077..b338d5e 100644 --- a/src/test/java/gr/james/sampling/WeightedRandomSamplingTest.java +++ b/src/test/java/gr/james/sampling/WeightedRandomSamplingTest.java @@ -41,7 +41,7 @@ public static Collection>> implementati @Test public void correctness() { final int[] streamSizes = {1, 20, 100}; - final int[] repsSizes = {1000000, 1000000, 2000000}; + final int[] repsSizes = {1000000, 2000000, 4000000}; Assert.assertEquals(streamSizes.length, repsSizes.length); @@ -55,7 +55,7 @@ public void correctness() { final WeightedRandomSampling alg = impl.get(); for (int i = 0; i < STREAM; i++) { - alg.feed(i, i + 1); + alg.feed(i, (i + 1.0) / (STREAM + 1.0)); } for (int s : alg.sample()) { @@ -64,7 +64,10 @@ public void correctness() { } for (int i = 0; i < d.length - 1; i++) { - Assert.assertTrue(d[i] < d[i + 1]); + if (d[i] > d[i + 1]) { + System.out.println(); + } + Assert.assertTrue(String.format("Correctness failed at stream size %d", STREAM), d[i] < d[i + 1]); } } } @@ -96,7 +99,7 @@ public void stream20() { } final Collection sample = IntStream.range(0, STREAM).boxed() - .collect(Collectors.toMap(o -> o, o -> (double) (o + 1))) + .collect(Collectors.toMap(o -> o, o -> (o + 1.0) / (STREAM + 1.0))) .entrySet().stream().collect(collector); for (int s : sample) { @@ -131,8 +134,8 @@ public void feedAlternative() { final WeightedRandomSampling rs3 = impl.get(); final Map map = new HashMap<>(); for (int i = 1; i <= SAMPLE; i++) { - map.put(i, (double) i); - rs1.feed(i, (double) i); + map.put(i, i / (SAMPLE + 1.0)); + rs1.feed(i, i / (SAMPLE + 1.0)); } rs3.feed(map.keySet().iterator(), map.values().iterator()); rs2.feed(map);