@Test
public void testFuncN() {

    FuncN<Integer> func = new FuncN<Integer>() {
        @Override
        public Integer call(Object... args) {
            int i = 0;
            for (Object o : args) {
                i = i | (Integer) o;
            }
            return i;
        }
    };
    Async.toAsync(func, Schedulers.immediate())
            .call(1, 2, 4, 8, 16, 32, 64, 128, 256, 512)
            .subscribe(new TestObserver<Object>(observer));
    verify(observer, never()).onError(any(Throwable.class));
    verify(observer, times(1)).onNext(1023);
    verify(observer, times(1)).onCompleted();
}