@Test
public void testAction2Error() {

    Action2<Integer, Integer> action = new Action2<Integer, Integer>() {
        @Override
        public void call(Integer t1, Integer t2) {
            throw new RuntimeException("Forced failure");
        }
    };
    Async.toAsync(action, Schedulers.immediate())
            .call(1, 2)
            .subscribe(new TestObserver<Object>(observer));
    verify(observer, times(1)).onError(any(Throwable.class));
    verify(observer, never()).onNext(null);
    verify(observer, never()).onCompleted();
}