@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.just(1).subscribeOn(Schedulers.computation()); } })
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.<Integer>empty().subscribeOn(Schedulers.computation()); } })
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.just(v).subscribeOn(Schedulers.computation()); } })
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.just(v).subscribeOn(Schedulers.computation()); } })
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.just(v).subscribeOn(Schedulers.computation()); } })
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.just(v).subscribeOn(Schedulers.computation()); } }, false, 3)
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.just(v).subscribeOn(Schedulers.computation()); } }, false, 1)
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.<Integer>empty().subscribeOn(Schedulers.computation()); } }, false, 128)
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.just(v).subscribeOn(Schedulers.computation()); } })
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.just(1).subscribeOn(Schedulers.computation()); } })
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.<Integer>empty().subscribeOn(Schedulers.computation()); } })
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.<Integer>error(new TestException()).subscribeOn(Schedulers.computation()); } }, true, 128)
@Override public MaybeSource<Integer> apply(Integer v) throws Exception { return Maybe.<Integer>error(new TestException()).subscribeOn(Schedulers.computation()); } }, true, 128)
@Test public void dispose() { TestHelper.checkDisposed(Maybe.just(1).subscribeOn(Schedulers.single())); } }
@Test public void subscribeOnSuccess() { String main = Thread.currentThread().getName(); Maybe.fromCallable(new Callable<String>() { @Override public String call() throws Exception { return Thread.currentThread().getName(); } }) .subscribeOn(Schedulers.single()) .test() .awaitDone(5, TimeUnit.SECONDS) .assertOf(TestHelper.observerSingleNot(main)) ; }
try { TestObserver<Void> to = Maybe.just(1) .subscribeOn(Schedulers.io()) .flatMapCompletable(new Function<Integer, Completable>() { @Override
@Test public void subscribeOnComplete() { Maybe.empty() .subscribeOn(Schedulers.single()) .test() .awaitDone(5, TimeUnit.SECONDS) .assertResult() ; }
@SuppressWarnings("unchecked") @Test public void noWinnerCompleteDispose() throws Exception { for (int i = 0; i < TestHelper.RACE_LONG_LOOPS; i++) { final AtomicBoolean interrupted = new AtomicBoolean(); final CountDownLatch cdl = new CountDownLatch(1); Maybe.ambArray( Maybe.empty() .subscribeOn(Schedulers.single()) .observeOn(Schedulers.computation()), Maybe.never() ) .subscribe(Functions.emptyConsumer(), Functions.emptyConsumer(), new Action() { @Override public void run() throws Exception { interrupted.set(Thread.currentThread().isInterrupted()); cdl.countDown(); } }); assertTrue(cdl.await(500, TimeUnit.SECONDS)); assertFalse("Interrupted!", interrupted.get()); } }
@Test public void subscribeOnError() { Maybe.error(new TestException()) .subscribeOn(Schedulers.single()) .test() .awaitDone(5, TimeUnit.SECONDS) .assertFailure(TestException.class) ; }
@Test public void failSingleMaybeBlockingGet() { try { RxJavaPlugins.setFailOnNonBlockingScheduler(true); Maybe.just(1) .subscribeOn(Schedulers.single()) .map(new Function<Integer, Integer>() { @Override public Integer apply(Integer v) throws Exception { Maybe.just(1).delay(10, TimeUnit.SECONDS).blockingGet(); return v; } }) .test() .awaitDone(5, TimeUnit.SECONDS) .assertFailure(IllegalStateException.class); } finally { RxJavaPlugins.reset(); } }