Package rx.subjects
Class TestSubject<T>
java.lang.Object
rx.Observable<T>
rx.subjects.Subject<T,T>
rx.subjects.TestSubject<T>
- Type Parameters:
T
- the type of item observed by and emitted by the subject
- All Implemented Interfaces:
Observer<T>
A variety of Subject that is useful for testing purposes. It operates on a
TestScheduler
and allows
you to precisely time emissions and notifications to the Subject's subscribers using relative virtual time
controlled by the TestScheduler
.-
Nested Class Summary
Nested classes/interfaces inherited from class rx.Observable
Observable.OnSubscribe<T>, Observable.Operator<R,
T>, Observable.Transformer<T, R> -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Scheduler.Worker
private final SubjectSubscriptionManager
<T> -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
TestSubject
(Observable.OnSubscribe<T> onSubscribe, SubjectSubscriptionManager<T> state, TestScheduler scheduler) -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> TestSubject
<T> create
(TestScheduler scheduler) Creates and returns a newTestSubject
.boolean
(package private) void
(package private) void
(package private) void
internalOnNext
(T v) void
Schedule a call toonCompleted
on TestScheduler.void
onCompleted
(long delayTime) Schedule a call toonCompleted
relative to "now()" +n milliseconds in the future.void
Schedule a call toonError
on TestScheduler.void
Schedule a call toonError
relative to "now()" +n milliseconds in the future.void
Schedule a call toonNext
on TestScheduler.void
Schedule a call toonNext
relative to "now()" +n milliseconds in the future.Methods inherited from class rx.subjects.Subject
toSerialized
Methods inherited from class rx.Observable
all, amb, amb, amb, amb, amb, amb, amb, amb, amb, ambWith, asObservable, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, buffer, cache, cache, cacheWithInitialCapacity, cast, collect, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatest, combineLatestDelayError, compose, concat, concat, concat, concat, concat, concat, concat, concat, concat, concatDelayError, concatDelayError, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatEager, concatMap, concatMapDelayError, concatMapEager, concatMapEager, concatMapEager, concatMapIterable, concatWith, contains, count, countLong, create, create, create, debounce, debounce, debounce, defaultIfEmpty, defer, delay, delay, delay, delay, delaySubscription, delaySubscription, delaySubscription, delaySubscription, dematerialize, distinct, distinct, distinctUntilChanged, distinctUntilChanged, distinctUntilChanged, doAfterTerminate, doOnCompleted, doOnEach, doOnEach, doOnError, doOnNext, doOnRequest, doOnSubscribe, doOnTerminate, doOnUnsubscribe, elementAt, elementAtOrDefault, empty, error, exists, extend, filter, finallyDo, first, first, firstOrDefault, firstOrDefault, flatMap, flatMap, flatMap, flatMap, flatMap, flatMap, flatMapIterable, flatMapIterable, flatMapIterable, flatMapIterable, forEach, forEach, forEach, from, from, from, from, from, fromAsync, fromCallable, groupBy, groupBy, groupBy, groupJoin, ignoreElements, interval, interval, interval, interval, isEmpty, join, just, just, just, just, just, just, just, just, just, just, last, last, lastOrDefault, lastOrDefault, lift, limit, map, materialize, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, merge, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeDelayError, mergeWith, nest, never, observeOn, observeOn, observeOn, observeOn, ofType, onBackpressureBuffer, onBackpressureBuffer, onBackpressureBuffer, onBackpressureBuffer, onBackpressureDrop, onBackpressureDrop, onBackpressureLatest, onErrorResumeNext, onErrorResumeNext, onErrorReturn, onExceptionResumeNext, onTerminateDetach, publish, publish, range, range, rebatchRequests, reduce, reduce, repeat, repeat, repeat, repeat, repeatWhen, repeatWhen, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, replay, retry, retry, retry, retryWhen, retryWhen, sample, sample, sample, scan, scan, sequenceEqual, sequenceEqual, serialize, share, single, single, singleOrDefault, singleOrDefault, skip, skip, skip, skipLast, skipLast, skipLast, skipUntil, skipWhile, startWith, startWith, startWith, startWith, startWith, startWith, startWith, startWith, startWith, startWith, startWith, subscribe, subscribe, subscribe, subscribe, subscribe, subscribe, subscribeOn, switchIfEmpty, switchMap, switchMapDelayError, switchOnNext, switchOnNextDelayError, take, take, take, takeFirst, takeLast, takeLast, takeLast, takeLast, takeLast, takeLastBuffer, takeLastBuffer, takeLastBuffer, takeLastBuffer, takeLastBuffer, takeUntil, takeUntil, takeWhile, throttleFirst, throttleFirst, throttleLast, throttleLast, throttleWithTimeout, throttleWithTimeout, timeInterval, timeInterval, timeout, timeout, timeout, timeout, timeout, timeout, timeout, timeout, timer, timer, timer, timer, timestamp, timestamp, toBlocking, toCompletable, toList, toMap, toMap, toMap, toMultimap, toMultimap, toMultimap, toMultimap, toSingle, toSortedList, toSortedList, toSortedList, toSortedList, unsafeSubscribe, unsubscribeOn, using, using, window, window, window, window, window, window, window, window, window, window, window, window, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, withLatestFrom, zip, zip, zip, zip, zip, zip, zip, zip, zip, zip, zip, zipWith, zipWith
-
Field Details
-
state
-
innerScheduler
-
-
Constructor Details
-
TestSubject
protected TestSubject(Observable.OnSubscribe<T> onSubscribe, SubjectSubscriptionManager<T> state, TestScheduler scheduler)
-
-
Method Details
-
create
Creates and returns a newTestSubject
.- Type Parameters:
T
- the value type- Parameters:
scheduler
- aTestScheduler
on which to operate this Subject- Returns:
- the new
TestSubject
-
onCompleted
public void onCompleted()Schedule a call toonCompleted
on TestScheduler. -
internalOnCompleted
void internalOnCompleted() -
onCompleted
public void onCompleted(long delayTime) Schedule a call toonCompleted
relative to "now()" +n milliseconds in the future.- Parameters:
delayTime
- the number of milliseconds in the future relative to "now()" at which to callonCompleted
-
onError
Schedule a call toonError
on TestScheduler.- Parameters:
e
- the exception encountered by the Observable
-
internalOnError
-
onError
Schedule a call toonError
relative to "now()" +n milliseconds in the future.- Parameters:
e
- theThrowable
to pass to theonError
methoddelayTime
- the number of milliseconds in the future relative to "now()" at which to callonError
-
onNext
Schedule a call toonNext
on TestScheduler.- Parameters:
v
- the item emitted by the Observable
-
internalOnNext
-
onNext
Schedule a call toonNext
relative to "now()" +n milliseconds in the future.- Parameters:
v
- the item to emitdelayTime
- the number of milliseconds in the future relative to "now()" at which to callonNext
-
hasObservers
public boolean hasObservers()Description copied from class:Subject
- Specified by:
hasObservers
in classSubject<T,
T> - Returns:
- true if there is at least one Observer subscribed to this Subject, false otherwise
-