@Override public int getPrefetch() { return source.getPrefetch(); }
@Override public int getPrefetch() { return source.getPrefetch(); }
@Override public int getPrefetch() { return source.getPrefetch(); }
@Override public int getPrefetch() { return source.getPrefetch(); }
@Override public int getPrefetch() { return source.getPrefetch(); }
@Test public void fromPublisherDefaultPrefetchIsSmallBufferSize() { assertThat(ParallelFlux.from(Flux.range(1, 5)) .getPrefetch()).isEqualTo(Queues.SMALL_BUFFER_SIZE); }
@Test public void testPrefetch() { assertThat(Flux.range(1, 10) .parallel(3) .reduce(() -> 0, (a, b) -> a + b) .getPrefetch()).isEqualTo(Integer.MAX_VALUE); }
@Test public void testPrefetch() { assertThat(Flux.range(1, 10) .parallel(3) .collect(ArrayList::new, List::add) .getPrefetch()).isEqualTo(Integer.MAX_VALUE); }
@Test public void fromPublishersDefaultPrefetchIsMinusOne() { assertThat(ParallelFlux.from(Flux.range(1, 5), Flux.range(5, 5)) .getPrefetch()).isEqualTo(-1); }
@Test public void scanOperator() throws Exception { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelLog<Integer> test = new ParallelLog<>(source, null); assertThat(test.scan(Scannable.Attr.PARENT)).isSameAs(source); assertThat(test.scan(Scannable.Attr.PREFETCH)) .isEqualTo(256) .isEqualTo(source.getPrefetch()); }
@Test public void scanOperator() { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); AssemblySnapshot stacktrace = new AssemblySnapshot(null, Traces.callSiteSupplierFactory.get()); ParallelFluxOnAssembly<Integer> test = new ParallelFluxOnAssembly<>(source, stacktrace); assertThat(test.scan(Scannable.Attr.PARENT)).isSameAs(source); assertThat(test.scan(Scannable.Attr.PREFETCH)) .isEqualTo(256) .isEqualTo(source.getPrefetch()); assertThat(test.scan(Scannable.Attr.ACTUAL_METADATA)).as("ACTUAL_METADATA").isTrue(); }
@Test public void scanOperator() throws Exception { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelLift<Integer, Integer> test = new ParallelLift<>(source, (sc, su) -> su); assertThat(test.scan(Scannable.Attr.PARENT)).isSameAs(source); assertThat(test.scan(Scannable.Attr.PREFETCH)) .isEqualTo(256) .isEqualTo(source.getPrefetch()); }
@Test public void scanOperator() throws Exception { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelFluxHide<Integer> test = new ParallelFluxHide<>(source); assertThat(test.scan(Scannable.Attr.PARENT)).isSameAs(source); assertThat(test.scan(Scannable.Attr.PREFETCH)) .isEqualTo(256) .isEqualTo(source.getPrefetch()); }
@Test public void scanOperator() throws Exception { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelFilter<Integer> test = new ParallelFilter<>(source, i -> i % 2 == 0); assertThat(test.scan(Scannable.Attr.PARENT)).isSameAs(source); assertThat(test.scan(Scannable.Attr.PREFETCH)) .isEqualTo(-1) .isNotEqualTo(source.getPrefetch()); }
@Test public void scanOperator() throws Exception { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelConcatMap<Integer, Integer> test = new ParallelConcatMap<>(source, i -> Flux.range(1, i), Queues.small(), 123, FluxConcatMap.ErrorMode.IMMEDIATE); assertThat(test.scan(Scannable.Attr.PARENT)).isSameAs(source); assertThat(test.scan(Scannable.Attr.PREFETCH)) .isEqualTo(123) .isNotEqualTo(source.getPrefetch()); assertThat(test.scan(Scannable.Attr.DELAY_ERROR)).isFalse(); }
@Test public void testConcatMapDelayErrorPrefetchDelayUntilEnd() { ParallelFlux<Integer> pf = ParallelFlux.from(Flux.range(1, 4), 2) .concatMapDelayError(i -> { if (i == 1) return Mono.error(new IllegalStateException("boom")); return Flux.just(i, 100 * i); }, false, 4); assertThat(pf.getPrefetch()).isEqualTo(4); StepVerifier.create(pf) .verifyErrorMessage("boom"); }
@Test public void scanOperator() throws Exception { ParallelFlux<Integer> source = Flux.range(1, 4).parallel(3); ParallelFlatMap<Integer, Integer> test = new ParallelFlatMap<>(source, i -> Flux.range(1, i), true, 12, Queues.small(), 123, Queues.small()); assertThat(test.scan(Scannable.Attr.PARENT)).isSameAs(source); assertThat(test.scan(Scannable.Attr.PREFETCH)) .isEqualTo(123) .isNotEqualTo(source.getPrefetch()); assertThat(test.scan(Scannable.Attr.DELAY_ERROR)).isTrue(); }
@Test public void testConcatMapPrefetch() { ParallelFlux<Integer> pf = ParallelFlux.from(Flux.range(1, 4), 2) .concatMap(i -> Flux.just(i, 100 * i), 4); assertThat(pf.getPrefetch()).isEqualTo(4); StepVerifier.create(pf) .expectNext(1, 100, 2, 200, 3, 300, 4, 400) .verifyComplete(); }
@Test public void testConcatMapDelayErrorPrefetch() { ParallelFlux<Integer> pf = ParallelFlux.from(Flux.range(1, 4), 2) .concatMapDelayError(i -> { if (i == 1) return Mono.<Integer>error(new IllegalStateException("boom")).hide(); return Flux.just(i, 100 * i); }, 4); assertThat(pf.getPrefetch()).isEqualTo(4); StepVerifier.create(pf) .expectNext(2, 200, 3, 300, 4, 400) .verifyErrorMessage("boom"); }
@Test public void transformChangesPrefetch() { assertThat(ParallelFlux.from(Flux.range(1, 10), 3, 12, Queues.small()) .transform(pf -> pf.runOn(Schedulers.parallel(), 3) .log() .hide()) .getPrefetch()) .isEqualTo(3); }