|
1
|
|
package com.pivovarit.collectors; |
|
2
|
|
|
|
3
|
|
import java.util.ArrayList; |
|
4
|
|
import java.util.Collection; |
|
5
|
|
import java.util.EnumSet; |
|
6
|
|
import java.util.List; |
|
7
|
|
import java.util.Set; |
|
8
|
|
import java.util.concurrent.CompletableFuture; |
|
9
|
|
import java.util.concurrent.Executor; |
|
10
|
|
import java.util.function.BiConsumer; |
|
11
|
|
import java.util.function.BinaryOperator; |
|
12
|
|
import java.util.function.Function; |
|
13
|
|
import java.util.function.Supplier; |
|
14
|
|
import java.util.stream.Collector; |
|
15
|
|
import java.util.stream.Stream; |
|
16
|
|
|
|
17
|
|
import static com.pivovarit.collectors.BatchingSpliterator.batching; |
|
18
|
|
import static com.pivovarit.collectors.BatchingSpliterator.partitioned; |
|
19
|
|
import static com.pivovarit.collectors.CompletionStrategy.ordered; |
|
20
|
|
import static com.pivovarit.collectors.CompletionStrategy.unordered; |
|
21
|
|
import static java.util.Collections.emptySet; |
|
22
|
|
|
|
23
|
|
/** |
|
24
|
|
* @author Grzegorz Piwowarek |
|
25
|
|
*/ |
|
26
|
|
class AsyncParallelStreamingCollector<T, R> implements Collector<T, List<CompletableFuture<R>>, Stream<R>> { |
|
27
|
|
|
|
28
|
|
private final Function<? super T, ? extends R> function; |
|
29
|
|
|
|
30
|
|
private final CompletionStrategy<R> completionStrategy; |
|
31
|
|
|
|
32
|
|
private final Set<Characteristics> characteristics; |
|
33
|
|
|
|
34
|
|
private final Dispatcher<R> dispatcher; |
|
35
|
|
|
|
36
|
|
private AsyncParallelStreamingCollector( |
|
37
|
|
Function<? super T, ? extends R> function, |
|
38
|
|
Dispatcher<R> dispatcher, |
|
39
|
|
boolean ordered) { |
|
40
|
1
1. <init> : negated conditional → KILLED
|
this.completionStrategy = ordered ? ordered() : unordered(); |
|
41
|
|
this.characteristics = switch (completionStrategy) { |
|
42
|
|
case CompletionStrategy.Ordered<R> __ -> emptySet(); |
|
43
|
|
case CompletionStrategy.Unordered<R> __ -> EnumSet.of(Characteristics.UNORDERED); |
|
44
|
|
}; |
|
45
|
|
this.dispatcher = dispatcher; |
|
46
|
|
this.function = function; |
|
47
|
|
} |
|
48
|
|
|
|
49
|
|
public static <T, R> Collector<T, ?, Stream<R>> from( |
|
50
|
|
Function<? super T, ? extends R> function, Executor executor, int parallelism, boolean ordered) { |
|
51
|
1
1. from : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::from → KILLED
|
return new AsyncParallelStreamingCollector<>(function, new Dispatcher<>(executor, parallelism), ordered); |
|
52
|
|
} |
|
53
|
|
|
|
54
|
|
public static <T, R> Collector<T, ?, Stream<R>> from( |
|
55
|
|
Function<? super T, ? extends R> function, Executor executor, boolean ordered) { |
|
56
|
1
1. from : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::from → KILLED
|
return new AsyncParallelStreamingCollector<>(function, new Dispatcher<>(executor), ordered); |
|
57
|
|
} |
|
58
|
|
|
|
59
|
|
@Override |
|
60
|
|
public Supplier<List<CompletableFuture<R>>> supplier() { |
|
61
|
1
1. supplier : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::supplier → KILLED
|
return ArrayList::new; |
|
62
|
|
} |
|
63
|
|
|
|
64
|
|
@Override |
|
65
|
|
public BiConsumer<List<CompletableFuture<R>>, T> accumulator() { |
|
66
|
1
1. accumulator : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::accumulator → KILLED
|
return (acc, e) -> { |
|
67
|
1
1. lambda$accumulator$0 : removed call to com/pivovarit/collectors/Dispatcher::start → TIMED_OUT
|
dispatcher.start(); |
|
68
|
1
1. lambda$accumulator$1 : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::lambda$accumulator$1 → KILLED
|
acc.add(dispatcher.enqueue(() -> function.apply(e))); |
|
69
|
|
}; |
|
70
|
|
} |
|
71
|
|
|
|
72
|
|
@Override |
|
73
|
|
public BinaryOperator<List<CompletableFuture<R>>> combiner() { |
|
74
|
1
1. combiner : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::combiner → SURVIVED
|
return (left, right) -> { |
|
75
|
|
throw new UnsupportedOperationException( |
|
76
|
|
"Using parallel stream with parallel collectors is a bad idea"); |
|
77
|
|
}; |
|
78
|
|
} |
|
79
|
|
|
|
80
|
|
@Override |
|
81
|
|
public Function<List<CompletableFuture<R>>, Stream<R>> finisher() { |
|
82
|
1
1. finisher : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::finisher → KILLED
|
return acc -> { |
|
83
|
1
1. lambda$finisher$0 : removed call to com/pivovarit/collectors/Dispatcher::stop → SURVIVED
|
dispatcher.stop(); |
|
84
|
1
1. lambda$finisher$0 : replaced return value with Stream.empty for com/pivovarit/collectors/AsyncParallelStreamingCollector::lambda$finisher$0 → KILLED
|
return completionStrategy.apply(acc); |
|
85
|
|
}; |
|
86
|
|
} |
|
87
|
|
|
|
88
|
|
@Override |
|
89
|
|
public Set<Characteristics> characteristics() { |
|
90
|
1
1. characteristics : replaced return value with Collections.emptySet for com/pivovarit/collectors/AsyncParallelStreamingCollector::characteristics → SURVIVED
|
return characteristics; |
|
91
|
|
} |
|
92
|
|
|
|
93
|
|
record BatchingCollector<T, R>(Function<? super T, ? extends R> task, Executor executor, int parallelism, |
|
94
|
|
boolean ordered) |
|
95
|
|
implements Collector<T, ArrayList<T>, Stream<R>> { |
|
96
|
|
|
|
97
|
|
@Override |
|
98
|
|
public Supplier<ArrayList<T>> supplier() { |
|
99
|
1
1. supplier : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::supplier → KILLED
|
return ArrayList::new; |
|
100
|
|
} |
|
101
|
|
|
|
102
|
|
@Override |
|
103
|
|
public BiConsumer<ArrayList<T>, T> accumulator() { |
|
104
|
1
1. accumulator : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::accumulator → KILLED
|
return ArrayList::add; |
|
105
|
|
} |
|
106
|
|
|
|
107
|
|
@Override |
|
108
|
|
public BinaryOperator<ArrayList<T>> combiner() { |
|
109
|
1
1. combiner : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::combiner → SURVIVED
|
return (left, right) -> { |
|
110
|
|
left.addAll(right); |
|
111
|
1
1. lambda$combiner$0 : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::lambda$combiner$0 → NO_COVERAGE
|
return left; |
|
112
|
|
}; |
|
113
|
|
} |
|
114
|
|
|
|
115
|
|
@Override |
|
116
|
|
public Function<ArrayList<T>, Stream<R>> finisher() { |
|
117
|
1
1. finisher : replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::finisher → KILLED
|
return items -> { |
|
118
|
1
1. lambda$finisher$0 : negated conditional → KILLED
|
if (items.size() == parallelism) { |
|
119
|
1
1. lambda$finisher$0 : replaced return value with Stream.empty for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::lambda$finisher$0 → KILLED
|
return items.stream() |
|
120
|
|
.collect(new AsyncParallelStreamingCollector<>(task, new Dispatcher<>(executor, parallelism), ordered)); |
|
121
|
|
} else { |
|
122
|
1
1. lambda$finisher$0 : replaced return value with Stream.empty for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::lambda$finisher$0 → KILLED
|
return partitioned(items, parallelism) |
|
123
|
|
.collect(new AsyncParallelStreamingCollector<>(batching(task), new Dispatcher<>(executor, parallelism), ordered)) |
|
124
|
|
.flatMap(Collection::stream); |
|
125
|
|
} |
|
126
|
|
}; |
|
127
|
|
} |
|
128
|
|
|
|
129
|
|
@Override |
|
130
|
|
public Set<Characteristics> characteristics() { |
|
131
|
|
return emptySet(); |
|
132
|
|
} |
|
133
|
|
} |
|
134
|
|
} |
| | Mutations |
| 40 |
|
1.1 Location : <init> Killed by : com.pivovarit.collectors.test.StreamingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.StreamingTest]/[test-factory:shouldCollectInOriginalOrder()]/[dynamic-test:#1] negated conditional → KILLED
|
| 51 |
|
1.1 Location : from Killed by : com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#72] replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::from → KILLED
|
| 56 |
|
1.1 Location : from Killed by : com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessEmpty()]/[dynamic-test:#10] replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::from → KILLED
|
| 61 |
|
1.1 Location : supplier Killed by : com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessEmpty()]/[dynamic-test:#10] replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::supplier → KILLED
|
| 66 |
|
1.1 Location : accumulator Killed by : com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessAllElementsInOrder()]/[dynamic-test:#10] replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::accumulator → KILLED
|
| 67 |
|
1.1 Location : lambda$accumulator$0 Killed by : none removed call to com/pivovarit/collectors/Dispatcher::start → TIMED_OUT
|
| 68 |
|
1.1 Location : lambda$accumulator$1 Killed by : com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessAllElementsInOrder()]/[dynamic-test:#10] replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::lambda$accumulator$1 → KILLED
|
| 74 |
|
1.1 Location : combiner Killed by : none replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::combiner → SURVIVED
Covering tests
|
| 82 |
|
1.1 Location : finisher Killed by : com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessEmpty()]/[dynamic-test:#10] replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector::finisher → KILLED
|
| 83 |
|
1.1 Location : lambda$finisher$0 Killed by : none removed call to com/pivovarit/collectors/Dispatcher::stop → SURVIVED
Covering tests
|
| 84 |
|
1.1 Location : lambda$finisher$0 Killed by : com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessAllElementsInOrder()]/[dynamic-test:#10] replaced return value with Stream.empty for com/pivovarit/collectors/AsyncParallelStreamingCollector::lambda$finisher$0 → KILLED
|
| 90 |
|
1.1 Location : characteristics Killed by : none replaced return value with Collections.emptySet for com/pivovarit/collectors/AsyncParallelStreamingCollector::characteristics → SURVIVED
Covering tests
|
| 99 |
|
1.1 Location : supplier Killed by : com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessEmpty()]/[dynamic-test:#19] replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::supplier → KILLED
|
| 104 |
|
1.1 Location : accumulator Killed by : com.pivovarit.collectors.test.RejectedExecutionHandlingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.RejectedExecutionHandlingTest]/[test-factory:shouldRejectInvalidRejectedExecutionHandlerFactory()]/[dynamic-test:#8] replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::accumulator → KILLED
|
| 109 |
|
1.1 Location : combiner Killed by : none replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::combiner → SURVIVED
Covering tests
Covered by tests:
- com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessEmpty()]/[dynamic-test:#19]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#55]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#30]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#74]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#44]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#63]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#88]
- com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessEmpty()]/[dynamic-test:#14]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#33]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#52]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#77]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#19]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#22]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#41]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#85]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessEmptyWithMaxParallelism()]/[dynamic-test:#66]
- com.pivovarit.collectors.test.RejectedExecutionHandlingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.RejectedExecutionHandlingTest]/[test-factory:shouldRejectInvalidRejectedExecutionHandlerFactory()]/[dynamic-test:#8]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#88]
- com.pivovarit.collectors.test.RejectedExecutionHandlingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.RejectedExecutionHandlingTest]/[test-factory:shouldRejectInvalidRejectedExecutionHandlerFactory()]/[dynamic-test:#6]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#22]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#33]
- com.pivovarit.collectors.test.BatchingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BatchingTest]/[test-factory:shouldProcessOnExactlyNThreads()]/[dynamic-test:#4]
- com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessAllElementsInOrder()]/[dynamic-test:#14]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#66]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#77]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#44]
- com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldStartProcessingImmediately()]/[dynamic-test:#19]
- com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessAllElements()]/[dynamic-test:#14]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#55]
- com.pivovarit.collectors.test.ExecutorPollutionTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.ExecutorPollutionTest]/[test-factory:shouldNotPolluteExecutorFactoryLimitedParallelism()]/[dynamic-test:#8]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#85]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#63]
- com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldStartProcessingImmediately()]/[dynamic-test:#14]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#41]
- com.pivovarit.collectors.test.ExceptionHandlingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.ExceptionHandlingTest]/[test-factory:shouldPropagateExceptionFactory()]/[dynamic-test:#19]
- com.pivovarit.collectors.test.ExecutorPollutionTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.ExecutorPollutionTest]/[test-factory:shouldNotPolluteExecutorFactoryLimitedParallelism()]/[dynamic-test:#7]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#52]
- com.pivovarit.collectors.test.ExceptionHandlingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.ExceptionHandlingTest]/[test-factory:shouldShortcircuitOnException()]/[dynamic-test:#14]
- com.pivovarit.collectors.test.BatchingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BatchingTest]/[test-factory:shouldProcessOnExactlyNThreads()]/[dynamic-test:#3]
- com.pivovarit.collectors.test.ExceptionHandlingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.ExceptionHandlingTest]/[test-factory:shouldShortcircuitOnException()]/[dynamic-test:#19]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#74]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#30]
- com.pivovarit.collectors.test.ExceptionHandlingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.ExceptionHandlingTest]/[test-factory:shouldPropagateExceptionFactory()]/[dynamic-test:#14]
- com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessAllElements()]/[dynamic-test:#19]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#19]
- com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldInterruptOnException()]/[dynamic-test:#19]
- com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldInterruptOnException()]/[dynamic-test:#14]
- com.pivovarit.collectors.test.BatchingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BatchingTest]/[method:shouldCollectInCompletionOrder()]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldRespectMaxParallelism()]/[dynamic-test:#11]
- com.pivovarit.collectors.test.BatchingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BatchingTest]/[method:shouldCollectInOriginalOrder()]
- com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldRespectMaxParallelism()]/[dynamic-test:#8]
|
| 111 |
|
1.1 Location : lambda$combiner$0 Killed by : none replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::lambda$combiner$0 → NO_COVERAGE
|
| 117 |
|
1.1 Location : finisher Killed by : com.pivovarit.collectors.test.BasicProcessingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicProcessingTest]/[test-factory:shouldProcessEmpty()]/[dynamic-test:#19] replaced return value with null for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::finisher → KILLED
|
| 118 |
|
1.1 Location : lambda$finisher$0 Killed by : com.pivovarit.collectors.test.BatchingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BatchingTest]/[method:shouldCollectInCompletionOrder()] negated conditional → KILLED
|
| 119 |
|
1.1 Location : lambda$finisher$0 Killed by : com.pivovarit.collectors.test.RejectedExecutionHandlingTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.RejectedExecutionHandlingTest]/[test-factory:shouldRejectInvalidRejectedExecutionHandlerFactory()]/[dynamic-test:#8] replaced return value with Stream.empty for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::lambda$finisher$0 → KILLED
|
| 122 |
|
1.1 Location : lambda$finisher$0 Killed by : com.pivovarit.collectors.test.BasicParallelismTest.[engine:junit-jupiter]/[class:com.pivovarit.collectors.test.BasicParallelismTest]/[test-factory:shouldProcessAllElementsWithMaxParallelism()]/[dynamic-test:#22] replaced return value with Stream.empty for com/pivovarit/collectors/AsyncParallelStreamingCollector$BatchingCollector::lambda$finisher$0 → KILLED
|