@Override public Observable<Integer> apply(Integer v) throws Exception { return Observable.range(1, 5); } })
@Override public ObservableSource<Integer> apply(Observable<Integer> v) throws Exception { return Observable.range(1, 2); } })
@Override public ObservableSource<Integer> apply(Integer v) throws Exception { return Observable.range(v, 2); } })
private Observable<Integer> mergeNSyncStreamsOfN(final int outerSize, final int innerSize) { Observable<Observable<Integer>> os = Observable.range(1, outerSize) .map(new Function<Integer, Observable<Integer>>() { @Override public Observable<Integer> apply(Integer i) { return Observable.range(1, innerSize); } }); return Observable.merge(os); }
@Test public void disposed() { TestHelper.checkDisposed(Observable.range(1, 10) .flatMapCompletable(new Function<Integer, CompletableSource>() { @Override public CompletableSource apply(Integer v) throws Exception { return Completable.complete(); } })); }
@Test public void toFlowableError1() { toFlowable(Observable.range(1, 5) , BackpressureStrategy.ERROR) .test(1) .assertFailure(MissingBackpressureException.class, 1); }
@Test public void toFlowableError2() { toFlowable(Observable.range(1, 5) , BackpressureStrategy.ERROR) .test(5) .assertResult(1, 2, 3, 4, 5); }
@Test public void withObservable() { Observable.range(1, 10) .subscribeWith(new TestObserver<Integer>()) .assertResult(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); }
@Test public void normal() { Observable.range(1, 10) .flatMapMaybe(new Function<Integer, MaybeSource<Integer>>() { @Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.just(v); } }) .test() .assertResult(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); }
@Test public void source() { Observable<Integer> source = Observable.range(1, 3); assertSame(source, (((HasUpstreamObservableSource<?>)source.replay())).source()); }
@Test public void normalDelayBoundary() { Observable.range(1, 5) .concatMapEagerDelayError(new Function<Integer, ObservableSource<Integer>>() { @Override public ObservableSource<Integer> apply(Integer t) { return Observable.range(t, 2); } }, false) .test() .assertResult(1, 2, 2, 3, 3, 4, 4, 5, 5, 6); }
@Test public void normalDelayEnd() { Observable.range(1, 5) .concatMapEagerDelayError(new Function<Integer, ObservableSource<Integer>>() { @Override public ObservableSource<Integer> apply(Integer t) { return Observable.range(t, 2); } }, true) .test() .assertResult(1, 2, 2, 3, 3, 4, 4, 5, 5, 6); }
@Test public void normal() { Observable.range(1, 10) .flatMapCompletable(new Function<Integer, CompletableSource>() { @Override public CompletableSource apply(Integer v) throws Exception { return Completable.complete(); } }) .test() .assertResult(); }
@Test public void rangeConditional() { Observable.range(1, 5) .doAfterNext(afterNext) .filter(Functions.alwaysTrue()) .subscribeWith(ts) .assertResult(1, 2, 3, 4, 5); assertEquals(Arrays.asList(1, -1, 2, -2, 3, -3, 4, -4, 5, -5), values); }
@Test public void syncFusedBoundary() { TestObserver<Integer> ts = ObserverFusion.newTest(QueueDisposable.SYNC | QueueDisposable.BOUNDARY); Observable.range(1, 5) .doFinally(this) .subscribe(ts); ObserverFusion.assertFusion(ts, QueueDisposable.NONE) .assertResult(1, 2, 3, 4, 5); assertEquals(1, calls); }
@Test public void timespanDefaultSchedulerSizeRestart() { Observable.range(1, 10) .window(1, TimeUnit.MINUTES, 20, true) .flatMap(Functions.<Observable<Integer>>identity(), true) .test() .awaitDone(5, TimeUnit.SECONDS) .assertResult(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); }
@Test public void normalNonDelayErrorOuter() { Observable.range(1, 10).concatWith(Observable.<Integer>error(new TestException())) .flatMapCompletable(new Function<Integer, CompletableSource>() { @Override public CompletableSource apply(Integer v) throws Exception { return Completable.complete(); } }, false) .test() .assertFailure(TestException.class); }
@Test public void timespanTimeskipCustomSchedulerBufferSize() { Observable.range(1, 10) .window(1, 1, TimeUnit.MINUTES, Schedulers.io(), 2) .flatMap(Functions.<Observable<Integer>>identity()) .test() .awaitDone(5, TimeUnit.SECONDS) .assertResult(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); }
@Test public void testTake() { TestObserver<Integer> ts = new TestObserver<Integer>(); Observable<Integer> cached = Observable.range(1, 100).replay().autoConnect(); cached.take(10).subscribe(ts); ts.assertNoErrors(); ts.assertTerminated(); ts.assertValues(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); // FIXME no longer assertable // ts.assertUnsubscribed(); }
@Test public void observers() { PublishSubject<Integer> ps = PublishSubject.create(); ObservableCache<Integer> cache = (ObservableCache<Integer>)Observable.range(1, 5).concatWith(ps).cache(); assertFalse(cache.hasObservers()); assertEquals(0, cache.cachedEventCount()); TestObserver<Integer> to = cache.test(); assertTrue(cache.hasObservers()); assertEquals(5, cache.cachedEventCount()); ps.onComplete(); to.assertResult(1, 2, 3, 4, 5); }