| 1 |  | package com.pivovarit.gatherers; | 
| 2 |  | 
 | 
| 3 |  | import java.util.concurrent.atomic.AtomicLong; | 
| 4 |  | import java.util.function.Supplier; | 
| 5 |  | import java.util.stream.Gatherer; | 
| 6 |  | 
 | 
| 7 |  | record SamplingGatherer<T>(int n) implements Gatherer<T, AtomicLong, T> { | 
| 8 |  | 
 | 
| 9 |  |     SamplingGatherer { | 
| 10 |  |         if (n <= 0) { | 
| 11 |  |             throw new IllegalArgumentException("sampling frequency can't be lower than 1"); | 
| 12 |  |         } | 
| 13 |  |     } | 
| 14 |  | 
 | 
| 15 |  |     @Override | 
| 16 |  |     public Supplier<AtomicLong> initializer() { | 
| 17 | 1
1. initializer : replaced return value with null for com/pivovarit/gatherers/SamplingGatherer::initializer → KILLED 
 |         return AtomicLong::new; | 
| 18 |  |     } | 
| 19 |  | 
 | 
| 20 |  |     @Override | 
| 21 |  |     public Integrator<AtomicLong, T, T> integrator() { | 
| 22 | 1
1. integrator : replaced return value with null for com/pivovarit/gatherers/SamplingGatherer::integrator → KILLED 
 |         return Integrator.ofGreedy((state, element, downstream) -> { | 
| 23 | 2
1. lambda$integrator$0 : negated conditional → KILLED 2. lambda$integrator$0 : Replaced long modulus with multiplication → KILLED
 
 |             if (state.getAndIncrement() % n == 0) { | 
| 24 | 2
1. lambda$integrator$0 : replaced boolean return with false for com/pivovarit/gatherers/SamplingGatherer::lambda$integrator$0 → SURVIVED 2. lambda$integrator$0 : replaced boolean return with true for com/pivovarit/gatherers/SamplingGatherer::lambda$integrator$0 → SURVIVED
 
 |                 return downstream.push(element); | 
| 25 |  |             } | 
| 26 | 1
1. lambda$integrator$0 : replaced boolean return with false for com/pivovarit/gatherers/SamplingGatherer::lambda$integrator$0 → SURVIVED 
 |             return true; | 
| 27 |  |         }); | 
| 28 |  |     } | 
| 29 |  | } | 
|  |  | Mutations | 
| 17 |  | 1.1Location : initializer
 Killed by : com.pivovarit.gatherers.blackbox.SamplingTest.[engine:junit-jupiter]/[class:com.pivovarit.gatherers.blackbox.SamplingTest]/[method:shouldSampleEmpty()] replaced return value with null for com/pivovarit/gatherers/SamplingGatherer::initializer → KILLED
 | 
| 22 |  | 1.1Location : integrator
 Killed by : com.pivovarit.gatherers.blackbox.SamplingTest.[engine:junit-jupiter]/[class:com.pivovarit.gatherers.blackbox.SamplingTest]/[method:shouldSampleEvery()] replaced return value with null for com/pivovarit/gatherers/SamplingGatherer::integrator → KILLED
 | 
| 23 |  | 1.1Location : lambda$integrator$0
 Killed by : com.pivovarit.gatherers.blackbox.SamplingTest.[engine:junit-jupiter]/[class:com.pivovarit.gatherers.blackbox.SamplingTest]/[method:shouldSampleEvery()] negated conditional → KILLED
 2.2Location : lambda$integrator$0
 Killed by : com.pivovarit.gatherers.blackbox.SamplingTest.[engine:junit-jupiter]/[class:com.pivovarit.gatherers.blackbox.SamplingTest]/[method:shouldSampleEvery()] Replaced long modulus with multiplication → KILLED
 | 
| 24 |  | 1.1Location : lambda$integrator$0
 Killed by : none replaced boolean return with false for com/pivovarit/gatherers/SamplingGatherer::lambda$integrator$0 → SURVIVED
Covering tests
 Covered by tests:
 
com.pivovarit.gatherers.blackbox.SamplingTest.[engine:junit-jupiter]/[class:com.pivovarit.gatherers.blackbox.SamplingTest]/[method:shouldSampleEvery()]com.pivovarit.gatherers.blackbox.SamplingTest.[engine:junit-jupiter]/[class:com.pivovarit.gatherers.blackbox.SamplingTest]/[method:shouldSampleEveryOther()]2.2Location : lambda$integrator$0
 Killed by : none replaced boolean return with true for com/pivovarit/gatherers/SamplingGatherer::lambda$integrator$0 → SURVIVED
Covering tests
 Covered by tests:
 
com.pivovarit.gatherers.blackbox.SamplingTest.[engine:junit-jupiter]/[class:com.pivovarit.gatherers.blackbox.SamplingTest]/[method:shouldSampleEvery()]com.pivovarit.gatherers.blackbox.SamplingTest.[engine:junit-jupiter]/[class:com.pivovarit.gatherers.blackbox.SamplingTest]/[method:shouldSampleEveryOther()] | 
| 26 |  | 1.1Location : lambda$integrator$0
 Killed by : none replaced boolean return with false for com/pivovarit/gatherers/SamplingGatherer::lambda$integrator$0 → SURVIVED
Covering tests
 Covered by tests:
 
com.pivovarit.gatherers.blackbox.SamplingTest.[engine:junit-jupiter]/[class:com.pivovarit.gatherers.blackbox.SamplingTest]/[method:shouldSampleEveryOther()] |