@Test public void asyncFusedThreadBarrier() { UnicastProcessor<Integer> up = UnicastProcessor.create(); up.onNext(1); up.onNext(2); up.onNext(3); up.onNext(4); up.onNext(5); up.onComplete(); StepVerifier.create(up.doFinally(this)) .expectFusion(ASYNC | THREAD_BARRIER, NONE) .expectNext(1, 2, 3, 4, 5) .expectComplete() .verify(); assertEquals(1, calls); assertEquals(SignalType.ON_COMPLETE, signalType); }
@Test public void asyncFused() { UnicastProcessor<Integer> up = UnicastProcessor.create(); up.onNext(1); up.onNext(2); up.onNext(3); up.onNext(4); up.onNext(5); up.onComplete(); StepVerifier.create(up.doFinally(this)) .expectFusion(ASYNC) .expectNext(1, 2, 3, 4, 5) .expectComplete() .verify(); assertEquals(1, calls); assertEquals(SignalType.ON_COMPLETE, signalType); }
@Test public void asyncFusedConditional() { UnicastProcessor<Integer> up = UnicastProcessor.create(); up.onNext(1); up.onNext(2); up.onNext(3); up.onNext(4); up.onNext(5); up.onComplete(); StepVerifier.create(up.doFinally(this) .filter(i -> true)) .expectFusion(ASYNC) .expectNext(1, 2, 3, 4, 5) .expectComplete() .verify(); assertEquals(1, calls); assertEquals(SignalType.ON_COMPLETE, signalType); }
@Test public void asyncFusedThreadBarrierConditional() { UnicastProcessor<Integer> up = UnicastProcessor.create(); up.onNext(1); up.onNext(2); up.onNext(3); up.onNext(4); up.onNext(5); up.onComplete(); StepVerifier.create(up.doFinally(this) .filter(i -> true)) .expectFusion(ASYNC | THREAD_BARRIER, NONE) .expectNext(1, 2, 3, 4, 5) .expectComplete() .verify(); assertEquals(1, calls); assertEquals(SignalType.ON_COMPLETE, signalType); }