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.Workerprivate final SubjectSubscriptionManager<T> -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedTestSubject(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) voidinternalOnNext(T v) voidSchedule a call toonCompletedon TestScheduler.voidonCompleted(long delayTime) Schedule a call toonCompletedrelative to "now()" +n milliseconds in the future.voidSchedule a call toonErroron TestScheduler.voidSchedule a call toonErrorrelative to "now()" +n milliseconds in the future.voidSchedule a call toonNexton TestScheduler.voidSchedule a call toonNextrelative to "now()" +n milliseconds in the future.Methods inherited from class rx.subjects.Subject
toSerializedMethods 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- aTestScheduleron which to operate this Subject- Returns:
- the new
TestSubject
-
onCompleted
public void onCompleted()Schedule a call toonCompletedon TestScheduler. -
internalOnCompleted
void internalOnCompleted() -
onCompleted
public void onCompleted(long delayTime) Schedule a call toonCompletedrelative 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 toonErroron TestScheduler.- Parameters:
e- the exception encountered by the Observable
-
internalOnError
-
onError
Schedule a call toonErrorrelative to "now()" +n milliseconds in the future.- Parameters:
e- theThrowableto pass to theonErrormethoddelayTime- the number of milliseconds in the future relative to "now()" at which to callonError
-
onNext
Schedule a call toonNexton TestScheduler.- Parameters:
v- the item emitted by the Observable
-
internalOnNext
-
onNext
Schedule a call toonNextrelative 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:
hasObserversin classSubject<T,T> - Returns:
- true if there is at least one Observer subscribed to this Subject, false otherwise
-