use of com.github.ljtfreitas.julian.ObjectResponseT in project julian-http-client by ljtfreitas.
the class SeqResponseTTest method bindNullCollection.
@Test
void bindNullCollection() {
when(endpoint.returnType()).thenReturn(JavaType.parameterized(Collection.class, String.class));
Promise<Response<Collection<String>>> promise = Promise.done(Response.done(null));
ResponseFn<Collection<String>, Collection<Object>> fn = new CollectionResponseT().bind(endpoint, new ObjectResponseT<Collection<Object>>().bind(endpoint, null));
Seq<Object> seq = responseT.bind(endpoint, fn).join(promise, Arguments.empty());
assertTrue(seq.isEmpty());
}
use of com.github.ljtfreitas.julian.ObjectResponseT in project julian-http-client by ljtfreitas.
the class FlowableResponseTTest method bind.
@Test
void bind() {
Promise<Response<Collection<String>>> response = new SinglePromise<>(Single.just(Response.done(List.of("one", "two", "three"))));
ResponseFn<Collection<String>, Collection<Object>> fn = new CollectionResponseT().bind(endpoint, new ObjectResponseT<Collection<Object>>().bind(endpoint, null));
when(endpoint.returnType()).thenReturn(JavaType.parameterized(Collection.class, String.class));
Flowable<Object> flowable = subject.bind(endpoint, fn).join(response, Arguments.empty());
TestSubscriber<Object> subscriber = new TestSubscriber<>();
flowable.subscribe(subscriber);
subscriber.assertComplete().assertNoErrors().assertValues("one", "two", "three");
}
use of com.github.ljtfreitas.julian.ObjectResponseT in project julian-http-client by ljtfreitas.
the class ArrayResponseTTest method bindNullCollection.
@Test
void bindNullCollection() {
when(endpoint.returnType()).thenReturn(JavaType.parameterized(Collection.class, String.class));
Promise<Response<Collection<String>>> promise = Promise.done(Response.done(null));
ResponseFn<Collection<String>, Collection<Object>> fn = new CollectionResponseT().bind(endpoint, new ObjectResponseT<Collection<Object>>().bind(endpoint, null));
Array<Object> array = responseT.bind(endpoint, fn).join(promise, Arguments.empty());
assertTrue(array.isEmpty());
}
use of com.github.ljtfreitas.julian.ObjectResponseT in project julian-http-client by ljtfreitas.
the class ObservableResponseTTest method bind.
@Test
void bind() {
Promise<Response<Collection<String>>> response = new SinglePromise<>(Single.just(Response.done(List.of("one", "two", "three"))));
ResponseFn<Collection<String>, Collection<Object>> fn = new CollectionResponseT().bind(endpoint, new ObjectResponseT<Collection<Object>>().bind(endpoint, null));
when(endpoint.returnType()).thenReturn(JavaType.parameterized(Collection.class, String.class));
Observable<Object> observable = subject.bind(endpoint, fn).join(response, Arguments.empty());
TestObserver<Object> observer = new TestObserver<>();
observable.subscribe(observer);
observer.assertComplete().assertNoErrors().assertValues("one", "two", "three");
}
use of com.github.ljtfreitas.julian.ObjectResponseT in project julian-http-client by ljtfreitas.
the class MultiResponseTTest method bind.
@Test
void bind() {
Promise<Response<Collection<String>>> response = Promise.done(Response.done(List.of("one", "two", "three")));
when(endpoint.returnType()).thenReturn(JavaType.parameterized(Collection.class, String.class));
ResponseFn<Collection<String>, Collection<Object>> fn = new CollectionResponseT().bind(endpoint, new ObjectResponseT<Collection<Object>>().bind(endpoint, null));
Multi<Object> multi = subject.bind(endpoint, fn).join(response, Arguments.empty());
AssertSubscriber<Object> subscriber = multi.subscribe().withSubscriber(AssertSubscriber.create(3));
subscriber.assertCompleted().assertItems("one", "two", "three");
}
Aggregations