public class TestSubscriber<T> extends Subscriber<T>
| Constructor and Description |
|---|
TestSubscriber() |
TestSubscriber(Observer<T> delegate) |
TestSubscriber(Subscriber<T> delegate) |
| Modifier and Type | Method and Description |
|---|---|
void |
assertNoErrors()
Assert that this
Subscriber has received no onError notifications. |
void |
assertReceivedOnNext(java.util.List<T> items)
Assert that a particular sequence of items was received by this Subscriber in order.
|
void |
assertTerminalEvent()
Assert that a single terminal event occurred, either
TestSubscriber.onCompleted() or TestSubscriber.onError(java.lang.Throwable). |
void |
assertUnsubscribed()
Assert that this
Subscriber is unsubscribed. |
void |
awaitTerminalEvent()
Blocks until this Subscriber receives a notification that the Observable is complete (either an
onCompleted or onError notification). |
void |
awaitTerminalEvent(long timeout,
java.util.concurrent.TimeUnit unit)
Blocks until this Subscriber receives a notification that the Observable is complete (either an
onCompleted or onError notification), or until a timeout expires. |
void |
awaitTerminalEventAndUnsubscribeOnTimeout(long timeout,
java.util.concurrent.TimeUnit unit)
Blocks until this Subscriber receives a notification that the Observable is complete (either an
onCompleted or onError notification), or until a timeout expires; if the Subscriber
is interrupted before either of these events take place, this method unsubscribes the Subscriber from the
Observable). |
java.lang.Thread |
getLastSeenThread()
Returns the last thread that was in use when an item or notification was received by this Subscriber.
|
java.util.List<Notification<T>> |
getOnCompletedEvents()
Get the
Notifications representing each time this Subscriber was notified of sequence completion
via TestSubscriber.onCompleted(), as a List. |
java.util.List<java.lang.Throwable> |
getOnErrorEvents()
Get the
Throwables this Subscriber was notified of via TestSubscriber.onError(java.lang.Throwable) as a List. |
java.util.List<T> |
getOnNextEvents()
Get the sequence of items observed by this Subscriber, as an ordered
List. |
void |
onCompleted()
Notifies the Observer that the
Observable has finished sending push-based notifications. |
void |
onError(java.lang.Throwable e)
Notifies the Observer that the
Observable has experienced an error condition. |
void |
onNext(T t)
Provides the Observer with a new item to observe.
|
void |
requestMore(long n)
Allow calling the protected
Subscriber.request(long) from unit tests. |
add, isUnsubscribed, onStart, request, setProducer, unsubscribepublic TestSubscriber(Subscriber<T> delegate)
public TestSubscriber()
public void onCompleted()
ObserverObservable has finished sending push-based notifications.
The Observable will not call this method if it calls Observer.onError(java.lang.Throwable).
public java.util.List<Notification<T>> getOnCompletedEvents()
Notifications representing each time this Subscriber was notified of sequence completion
via TestSubscriber.onCompleted(), as a List.TestSubscriber.onCompleted() methodpublic void onError(java.lang.Throwable e)
ObserverObservable has experienced an error condition.
If the Observable calls this method, it will not thereafter call Observer.onNext(T) or
Observer.onCompleted().
e - the exception encountered by the Observablepublic java.util.List<java.lang.Throwable> getOnErrorEvents()
Throwables this Subscriber was notified of via TestSubscriber.onError(java.lang.Throwable) as a List.TestSubscriber.onError(java.lang.Throwable) methodpublic void onNext(T t)
Observer
The Observable may call this closure 0 or more times.
The Observable will not call this closure again after it calls either Observer.onCompleted() or
Observer.onError(java.lang.Throwable).
t - the item emitted by the Observablepublic void requestMore(long n)
Subscriber.request(long) from unit tests.n - public java.util.List<T> getOnNextEvents()
List.public void assertReceivedOnNext(java.util.List<T> items)
items - the sequence of items expected to have been observedjava.lang.AssertionError - if the sequence of items observed does not exactly match itemspublic void assertTerminalEvent()
TestSubscriber.onCompleted() or TestSubscriber.onError(java.lang.Throwable).java.lang.AssertionError - if not exactly one terminal event notification was receivedpublic void assertUnsubscribed()
Subscriber is unsubscribed.java.lang.AssertionError - if this Subscriber is not unsubscribedpublic void assertNoErrors()
Subscriber has received no onError notifications.java.lang.AssertionError - if this Subscriber has received one or more onError notificationspublic void awaitTerminalEvent()
onCompleted or onError notification).java.lang.RuntimeException - if the Subscriber is interrupted before the Observable is able to completepublic void awaitTerminalEvent(long timeout,
java.util.concurrent.TimeUnit unit)
onCompleted or onError notification), or until a timeout expires.timeout - the duration of the timeoutunit - the units in which timeout is expressedjava.lang.RuntimeException - if the Subscriber is interrupted before the Observable is able to completepublic void awaitTerminalEventAndUnsubscribeOnTimeout(long timeout,
java.util.concurrent.TimeUnit unit)
onCompleted or onError notification), or until a timeout expires; if the Subscriber
is interrupted before either of these events take place, this method unsubscribes the Subscriber from the
Observable).timeout - the duration of the timeoutunit - the units in which timeout is expressedpublic java.lang.Thread getLastSeenThread()
Thread on which this Subscriber last received an item or notification from the
Observable it is subscribed to