From 694b47fe15c7a2a4731e3efa4f8912b67204308c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=A1vid=20Karnok?= Date: Fri, 11 Nov 2016 19:44:02 +0100 Subject: [PATCH] 2.x: add fluent requestMore to TestSubscriber --- .../io/reactivex/subscribers/TestSubscriber.java | 15 ++++++++++++++- .../reactivex/subscribers/TestSubscriberTest.java | 12 ++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/src/main/java/io/reactivex/subscribers/TestSubscriber.java b/src/main/java/io/reactivex/subscribers/TestSubscriber.java index 676d0a49f8..5b3912e07a 100644 --- a/src/main/java/io/reactivex/subscribers/TestSubscriber.java +++ b/src/main/java/io/reactivex/subscribers/TestSubscriber.java @@ -16,11 +16,12 @@ import org.reactivestreams.*; +import io.reactivex.annotations.Experimental; import io.reactivex.disposables.Disposable; import io.reactivex.functions.Consumer; import io.reactivex.internal.fuseable.QueueSubscription; import io.reactivex.internal.subscriptions.SubscriptionHelper; -import io.reactivex.internal.util.*; +import io.reactivex.internal.util.ExceptionHelper; import io.reactivex.observers.BaseTestConsumer; /** @@ -403,6 +404,18 @@ public final TestSubscriber assertOf(Consumer> chec return this; } + /** + * Calls {@link #request(long)} and returns this. + * @param n the request amount + * @return this + * @since 2.0.1 - experimental + */ + @Experimental + public final TestSubscriber requestMore(long n) { + request(n); + return this; + } + /** * A subscriber that ignores all events and does not report errors. */ diff --git a/src/test/java/io/reactivex/subscribers/TestSubscriberTest.java b/src/test/java/io/reactivex/subscribers/TestSubscriberTest.java index e1adbacba9..41021586a9 100644 --- a/src/test/java/io/reactivex/subscribers/TestSubscriberTest.java +++ b/src/test/java/io/reactivex/subscribers/TestSubscriberTest.java @@ -1707,4 +1707,16 @@ public void assertValueAtInvalidIndex() { } }); } + + @Test + public void requestMore() { + Flowable.range(1, 5) + .test(0) + .requestMore(1) + .assertValue(1) + .requestMore(2) + .assertValues(1, 2, 3) + .requestMore(3) + .assertResult(1, 2, 3, 4, 5); + } }