RxJava3Adapter { public static <T> Flowable<T> fluxToFlowable(Flux<T> source) { return new FluxAsFlowable<>(source); } RxJava3Adapter(); static Flux<T> flowableToFlux(Flowable<T> source); static Flowable<T> fluxToFlowable(Flux<T> source); static Flowable<T> monoToFlowable(Mono<T> source); static Completable monoToCompletable(Mono<?> source); static Completable monoToCompletable(Mono<T> source, Consumer<T> discardHandler); static Mono<Void> completableToMono(Completable source); static Single<T> monoToSingle(Mono<T> source); static Mono<T> singleToMono(Single<T> source); static Flux<T> observableToFlux(Observable<T> source, BackpressureStrategy strategy); static Observable<T> fluxToObservable(Flux<T> source); static Mono<T> maybeToMono(Maybe<T> source); static Maybe<T> monoToMaybe(Mono<T> source);  }
@Test public void fluxToFlowable() { Flowable<Integer> f = Flux.range(1, 10) .hide() .as(RxJava3Adapter::fluxToFlowable); StepVerifier.create(f) .expectNext(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) .expectComplete() .verify(); }