/** * @see Goro#schedule(Callable) */ public <T> Observable<T> schedule(final Callable<T> task) { return schedule(Goro.DEFAULT_QUEUE, task); }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); GoroService.setup(this, Goro.create()); Scheduler scheduler = new RxGoro(goro).scheduler("test-queue"); Observable.just("ok") .subscribeOn(scheduler) .subscribe(new Action1<String>() { @Override public void call(String s) { result = "ok"; resultSync.countDown(); } }); Observable.error(new RuntimeException("test error")) .subscribeOn(scheduler) .subscribe(Actions.empty(), new Action1<Throwable>() { @Override public void call(Throwable throwable) { error = throwable; errorSync.countDown(); } }); }
@Test public void unsubscribe() { TestSubscriber<String> subscriber = new TestSubscriber<>(); Observable.just("ok") .subscribeOn(rxGoro.scheduler()) .subscribe(subscriber) .unsubscribe(); queues.executeAll(); subscriber.assertNoErrors(); subscriber.assertNoValues(); subscriber.assertNotCompleted(); }
@Before public void init() { rxGoro = new RxGoro(createGoroWith(queues)); }
@Test public void schedule() { TestSubscriber<String> subscriber = new TestSubscriber<>(); Observable.just("ok") .subscribeOn(rxGoro.scheduler("test")) .subscribe(subscriber); subscriber.assertNoValues(); subscriber.assertNotCompleted(); queues.executeAll(); subscriber.assertNoErrors(); subscriber.assertCompleted(); subscriber.assertValue("ok"); }
/** * @see {@link Goro#schedule(Callable)} */ public <T> Observable<T> schedule(final Callable<T> task) { return schedule(Goro.DEFAULT_QUEUE, task); }