@Test public void testLastMultiSubscribe() { Maybe<Integer> last = Observable.just(1, 2, 3).lastElement(); assertEquals(3, last.blockingGet().intValue()); assertEquals(3, last.blockingGet().intValue()); }
@Test(expected = NullPointerException.class) public void reduceFunctionReturnsNull() { Observable.just(1, 1).reduce(new BiFunction<Integer, Integer, Integer>() { @Override public Integer apply(Integer a, Integer b) { return null; } }).blockingGet(); }
@Test public void testBackpressureWithNoInitialValue() throws InterruptedException { Observable<Integer> source = Observable.just(1, 2, 3, 4, 5, 6); Maybe<Integer> reduced = source.reduce(sum); Integer r = reduced.blockingGet(); assertEquals(21, r.intValue()); }
@Test public void testLastWithElements() { Maybe<Integer> last = Observable.just(1, 2, 3).lastElement(); assertEquals(3, last.blockingGet().intValue()); }
@Test public void testLastMultiSubscribe() { Maybe<Integer> last = Flowable.just(1, 2, 3).lastElement(); assertEquals(3, last.blockingGet().intValue()); assertEquals(3, last.blockingGet().intValue()); }
@Override public Integer apply(Integer v) throws Exception { Maybe.just(1).delay(10, TimeUnit.SECONDS).blockingGet(); return v; } })
@Test public void reduceInts() { Observable<Integer> o = Observable.just(1, 2, 3); int value = o.reduce(new BiFunction<Integer, Integer, Integer>() { @Override public Integer apply(Integer t1, Integer t2) { return t1 + t2; } }).blockingGet(); assertEquals(6, value); }
@SuppressWarnings("unchecked") @Test(expected = NullPointerException.class) public void zipIterableTwoIsNull() { Maybe.zip(Arrays.asList(Maybe.just(1), null), new Function<Object[], Object>() { @Override public Object apply(Object[] v) { return 1; } }) .blockingGet(); }
@SuppressWarnings("unchecked") @Test(expected = NullPointerException.class) public void zipIterableOneIsNull() { Maybe.zip(Arrays.asList(null, Maybe.just(1)), new Function<Object[], Object>() { @Override public Object apply(Object[] v) { return 1; } }) .blockingGet(); }
@Test public void testLastWithElements() { Maybe<Integer> last = Flowable.just(1, 2, 3).lastElement(); assertEquals(3, last.blockingGet().intValue()); }
@Test public void testBackpressureWithNoInitialValue() throws InterruptedException { Flowable<Integer> source = Flowable.just(1, 2, 3, 4, 5, 6); Maybe<Integer> reduced = source.reduce(sum); Integer r = reduced.blockingGet(); assertEquals(21, r.intValue()); }
@Test public void testElementAt() { assertEquals(2, Observable.fromArray(1, 2).elementAt(1).blockingGet() .intValue()); }
@SuppressWarnings("unchecked") @Test(expected = NullPointerException.class) public void zipArrayOneIsNull() { Maybe.zipArray(new Function<Object[], Object>() { @Override public Object apply(Object[] v) { return 1; } }, Maybe.just(1), null) .blockingGet(); }
@Test public void testLastWithNoElements() { Maybe<?> last = Flowable.empty().lastElement(); assertNull(last.blockingGet()); }
@Test public void testLastWithNoElements() { Maybe<?> last = Observable.empty().lastElement(); assertNull(last.blockingGet()); }
@Test public void offlineSuccess() { Maybe<Integer> source = Maybe.just(1).cache(); assertEquals(1, source.blockingGet().intValue()); source.test() .assertResult(1); }
/** * While mapping over range(1,0).last() we expect NoSuchElementException since the sequence is empty. */ @Test public void testErrorPassesThruMap() { assertNull(Observable.range(1, 0).lastElement().map(new Function<Integer, Integer>() { @Override public Integer apply(Integer i) { return i; } }).blockingGet()); }
/** * While mapping over range(1,0).last() we expect NoSuchElementException since the sequence is empty. */ @Test public void testErrorPassesThruMap() { assertNull(Flowable.range(1, 0).lastElement().map(new Function<Integer, Integer>() { @Override public Integer apply(Integer i) { return i; } }).blockingGet()); }
@Test public void offlineComplete() { Maybe<Integer> source = Maybe.<Integer>empty().cache(); assertNull(source.blockingGet()); source.test() .assertResult(); }
@Test public void offlineError() { Maybe<Integer> source = Maybe.<Integer>error(new TestException()).cache(); try { source.blockingGet(); fail("Should have thrown"); } catch (TestException ex) { // expected } source.test() .assertFailure(TestException.class); }