Search in sources :

Example 1 with Maybe

use of io.reactivex.Maybe in project spring-framework by spring-projects.

the class RequestBodyArgumentResolverTests method emptyBodyWithMaybe.

@Test
public void emptyBodyWithMaybe() throws Exception {
    MethodParameter param = this.testMethod.annot(requestBody()).arg(Maybe.class, String.class);
    Maybe<String> maybe = resolveValueWithEmptyBody(param);
    StepVerifier.create(maybe.toFlowable()).expectNextCount(0).expectError(ServerWebInputException.class).verify();
    param = this.testMethod.annot(requestBody().notRequired()).arg(Maybe.class, String.class);
    maybe = resolveValueWithEmptyBody(param);
    StepVerifier.create(maybe.toFlowable()).expectNextCount(0).expectComplete().verify();
}
Also used : ServerWebInputException(org.springframework.web.server.ServerWebInputException) Maybe(io.reactivex.Maybe) MethodParameter(org.springframework.core.MethodParameter) Test(org.junit.Test)

Example 2 with Maybe

use of io.reactivex.Maybe in project spring-framework by spring-projects.

the class HttpEntityArgumentResolverTests method emptyBodyWithRxJava2Maybe.

@Test
public void emptyBodyWithRxJava2Maybe() throws Exception {
    ResolvableType type = httpEntityType(Maybe.class, String.class);
    HttpEntity<Maybe<String>> entity = resolveValueWithEmptyBody(type);
    StepVerifier.create(entity.getBody().toFlowable()).expectNextCount(0).expectComplete().verify();
}
Also used : Maybe(io.reactivex.Maybe) ResolvableType(org.springframework.core.ResolvableType) Test(org.junit.Test)

Example 3 with Maybe

use of io.reactivex.Maybe in project retrofit by square.

the class RxJava2CallAdapterFactoryTest method rawBodyTypeThrows.

@Test
public void rawBodyTypeThrows() {
    Type observableType = new TypeToken<Observable>() {
    }.getType();
    try {
        factory.get(observableType, NO_ANNOTATIONS, retrofit);
        fail();
    } catch (IllegalStateException e) {
        assertThat(e).hasMessage("Observable return type must be parameterized as Observable<Foo> or Observable<? extends Foo>");
    }
    Type singleType = new TypeToken<Single>() {
    }.getType();
    try {
        factory.get(singleType, NO_ANNOTATIONS, retrofit);
        fail();
    } catch (IllegalStateException e) {
        assertThat(e).hasMessage("Single return type must be parameterized as Single<Foo> or Single<? extends Foo>");
    }
    Type maybeType = new TypeToken<Maybe>() {
    }.getType();
    try {
        factory.get(maybeType, NO_ANNOTATIONS, retrofit);
        fail();
    } catch (IllegalStateException e) {
        assertThat(e).hasMessage("Maybe return type must be parameterized as Maybe<Foo> or Maybe<? extends Foo>");
    }
    Type flowableType = new TypeToken<Flowable>() {
    }.getType();
    try {
        factory.get(flowableType, NO_ANNOTATIONS, retrofit);
        fail();
    } catch (IllegalStateException e) {
        assertThat(e).hasMessage("Flowable return type must be parameterized as Flowable<Foo> or Flowable<? extends Foo>");
    }
}
Also used : Type(java.lang.reflect.Type) Maybe(io.reactivex.Maybe) Single(io.reactivex.Single) Observable(io.reactivex.Observable) Flowable(io.reactivex.Flowable) Test(org.junit.Test)

Example 4 with Maybe

use of io.reactivex.Maybe in project brave by openzipkin.

the class CurrentTraceContextAssemblyTrackingMatrixTest method single_conditional_assembleInScope_subscribeNoScope.

@Test
public void single_conditional_assembleInScope_subscribeNoScope() {
    Maybe<Integer> source, errorSource;
    try (Scope scope = currentTraceContext.newScope(assemblyContext)) {
        source = Single.just(1).filter(lessThanThreeInAssemblyContext).doOnSuccess(e -> assertInAssemblyContext()).doOnComplete(this::assertInSubscribeContext);
        errorSource = Single.<Integer>error(new IllegalStateException()).filter(lessThanThreeInAssemblyContext).doOnError(t -> assertInAssemblyContext());
    }
    subscribeInDifferentContext(source.toObservable(), errorSource.toObservable()).assertResult(1);
}
Also used : MaybeObserver(io.reactivex.MaybeObserver) ScalarCallable(io.reactivex.internal.fuseable.ScalarCallable) ObservableRange(io.reactivex.internal.operators.observable.ObservableRange) ParallelFilter(io.reactivex.internal.operators.parallel.ParallelFilter) FlowableFromCallable(io.reactivex.internal.operators.flowable.FlowableFromCallable) Completable(io.reactivex.Completable) FlowableFilter(io.reactivex.internal.operators.flowable.FlowableFilter) Assertions.assertThat(org.assertj.core.api.Assertions.assertThat) Maybe(io.reactivex.Maybe) ConnectableFlowable(io.reactivex.flowables.ConnectableFlowable) StrictCurrentTraceContext(brave.propagation.StrictCurrentTraceContext) Callable(java.util.concurrent.Callable) CurrentTraceContext(brave.propagation.CurrentTraceContext) SingleFromCallable(io.reactivex.internal.operators.single.SingleFromCallable) Single(io.reactivex.Single) SingleJust(io.reactivex.internal.operators.single.SingleJust) MaybeFromCallable(io.reactivex.internal.operators.maybe.MaybeFromCallable) ParallelFlowable(io.reactivex.parallel.ParallelFlowable) Flowable(io.reactivex.Flowable) CompletableFromCallable(io.reactivex.internal.operators.completable.CompletableFromCallable) After(org.junit.After) Observable(io.reactivex.Observable) Subscriber(org.reactivestreams.Subscriber) MaybeFilterSingle(io.reactivex.internal.operators.maybe.MaybeFilterSingle) Before(org.junit.Before) ObservablePublish(io.reactivex.internal.operators.observable.ObservablePublish) ConnectableObservable(io.reactivex.observables.ConnectableObservable) CompletableObserver(io.reactivex.CompletableObserver) ParallelFromPublisher(io.reactivex.internal.operators.parallel.ParallelFromPublisher) CompletableEmpty(io.reactivex.internal.operators.completable.CompletableEmpty) TestObserver(io.reactivex.observers.TestObserver) Test(org.junit.Test) RxJavaPlugins(io.reactivex.plugins.RxJavaPlugins) Predicate(io.reactivex.functions.Predicate) TraceContext(brave.propagation.TraceContext) MaybeFilter(io.reactivex.internal.operators.maybe.MaybeFilter) FlowablePublish(io.reactivex.internal.operators.flowable.FlowablePublish) ObservableFromCallable(io.reactivex.internal.operators.observable.ObservableFromCallable) SingleObserver(io.reactivex.SingleObserver) FlowableRange(io.reactivex.internal.operators.flowable.FlowableRange) MaybeJust(io.reactivex.internal.operators.maybe.MaybeJust) Observer(io.reactivex.Observer) Scope(brave.propagation.CurrentTraceContext.Scope) ObservableFilter(io.reactivex.internal.operators.observable.ObservableFilter) Scope(brave.propagation.CurrentTraceContext.Scope) Test(org.junit.Test)

Example 5 with Maybe

use of io.reactivex.Maybe in project brave by openzipkin.

the class CurrentTraceContextAssemblyTrackingMatrixTest method single_conditional_assembleInScope_subscribeInScope.

@Test
public void single_conditional_assembleInScope_subscribeInScope() {
    Maybe<Integer> source, errorSource;
    try (Scope scope = currentTraceContext.newScope(assemblyContext)) {
        source = Single.just(1).filter(lessThanThreeInAssemblyContext).doOnSuccess(e -> assertInAssemblyContext()).doOnComplete(this::assertInSubscribeContext);
        errorSource = Single.<Integer>error(new IllegalStateException()).filter(lessThanThreeInAssemblyContext).doOnError(t -> assertInAssemblyContext());
    }
    subscribeInDifferentContext(source.toObservable(), errorSource.toObservable()).assertResult(1);
}
Also used : MaybeObserver(io.reactivex.MaybeObserver) ScalarCallable(io.reactivex.internal.fuseable.ScalarCallable) ObservableRange(io.reactivex.internal.operators.observable.ObservableRange) ParallelFilter(io.reactivex.internal.operators.parallel.ParallelFilter) FlowableFromCallable(io.reactivex.internal.operators.flowable.FlowableFromCallable) Completable(io.reactivex.Completable) FlowableFilter(io.reactivex.internal.operators.flowable.FlowableFilter) Assertions.assertThat(org.assertj.core.api.Assertions.assertThat) Maybe(io.reactivex.Maybe) ConnectableFlowable(io.reactivex.flowables.ConnectableFlowable) StrictCurrentTraceContext(brave.propagation.StrictCurrentTraceContext) Callable(java.util.concurrent.Callable) CurrentTraceContext(brave.propagation.CurrentTraceContext) SingleFromCallable(io.reactivex.internal.operators.single.SingleFromCallable) Single(io.reactivex.Single) SingleJust(io.reactivex.internal.operators.single.SingleJust) MaybeFromCallable(io.reactivex.internal.operators.maybe.MaybeFromCallable) ParallelFlowable(io.reactivex.parallel.ParallelFlowable) Flowable(io.reactivex.Flowable) CompletableFromCallable(io.reactivex.internal.operators.completable.CompletableFromCallable) After(org.junit.After) Observable(io.reactivex.Observable) Subscriber(org.reactivestreams.Subscriber) MaybeFilterSingle(io.reactivex.internal.operators.maybe.MaybeFilterSingle) Before(org.junit.Before) ObservablePublish(io.reactivex.internal.operators.observable.ObservablePublish) ConnectableObservable(io.reactivex.observables.ConnectableObservable) CompletableObserver(io.reactivex.CompletableObserver) ParallelFromPublisher(io.reactivex.internal.operators.parallel.ParallelFromPublisher) CompletableEmpty(io.reactivex.internal.operators.completable.CompletableEmpty) TestObserver(io.reactivex.observers.TestObserver) Test(org.junit.Test) RxJavaPlugins(io.reactivex.plugins.RxJavaPlugins) Predicate(io.reactivex.functions.Predicate) TraceContext(brave.propagation.TraceContext) MaybeFilter(io.reactivex.internal.operators.maybe.MaybeFilter) FlowablePublish(io.reactivex.internal.operators.flowable.FlowablePublish) ObservableFromCallable(io.reactivex.internal.operators.observable.ObservableFromCallable) SingleObserver(io.reactivex.SingleObserver) FlowableRange(io.reactivex.internal.operators.flowable.FlowableRange) MaybeJust(io.reactivex.internal.operators.maybe.MaybeJust) Observer(io.reactivex.Observer) Scope(brave.propagation.CurrentTraceContext.Scope) ObservableFilter(io.reactivex.internal.operators.observable.ObservableFilter) Scope(brave.propagation.CurrentTraceContext.Scope) Test(org.junit.Test)

Aggregations

Maybe (io.reactivex.Maybe)13 Test (org.junit.Test)10 Single (io.reactivex.Single)8 Flowable (io.reactivex.Flowable)7 Observable (io.reactivex.Observable)6 Type (java.lang.reflect.Type)3 CurrentTraceContext (brave.propagation.CurrentTraceContext)2 Scope (brave.propagation.CurrentTraceContext.Scope)2 StrictCurrentTraceContext (brave.propagation.StrictCurrentTraceContext)2 TraceContext (brave.propagation.TraceContext)2 Completable (io.reactivex.Completable)2 CompletableObserver (io.reactivex.CompletableObserver)2 MaybeObserver (io.reactivex.MaybeObserver)2 Observer (io.reactivex.Observer)2 SingleObserver (io.reactivex.SingleObserver)2 ConnectableFlowable (io.reactivex.flowables.ConnectableFlowable)2 Predicate (io.reactivex.functions.Predicate)2 ScalarCallable (io.reactivex.internal.fuseable.ScalarCallable)2 CompletableEmpty (io.reactivex.internal.operators.completable.CompletableEmpty)2 CompletableFromCallable (io.reactivex.internal.operators.completable.CompletableFromCallable)2