@SuppressWarnings("unchecked") @Test(expected = NullPointerException.class) public void zipIterableOneIsNull() { Single.zip(Arrays.asList(null, just1), new Function<Object[], Object>() { @Override public Object apply(Object[] v) { return 1; } }).blockingGet(); }
@SuppressWarnings("unchecked") @Test(expected = NullPointerException.class) public void zipIterableOneFunctionNull() { Single.zip(Arrays.asList(just1, just1), null).blockingGet(); }
@SuppressWarnings("unchecked") @Test(expected = NullPointerException.class) public void zipIterableTwoIsNull() { Single.zip(Arrays.asList(just1, null), new Function<Object[], Object>() { @Override public Object apply(Object[] v) { return 1; } }) .blockingGet(); }
@Test(expected = NullPointerException.class) public void liftFunctionReturnsNull() { just1.lift(new SingleOperator<Object, Integer>() { @Override public SingleObserver<? super Integer> apply(SingleObserver<? super Object> s) { return null; } }).blockingGet(); }
@Test(expected = NullPointerException.class) public void zipWithFunctionReturnsNull() { just1.zipWith(just1, new BiFunction<Integer, Integer, Object>() { @Override public Object apply(Integer a, Integer b) { return null; } }).blockingGet(); } }
@Test(timeout = 5000, expected = TestException.class) public void toSingleSupplierError() { error.completable.toSingle(new Callable<Object>() { @Override public Object call() { return 1; } }).blockingGet(); }
@Test(expected = TestException.class) public void toSingleSupplierThrows() { normal.completable.toSingle(new Callable<Object>() { @Override public Object call() { throw new TestException(); } }).blockingGet(); }
@Test(expected = NullPointerException.class) public void zip2ZipperReturnsdNull() { Single.zip(just1, null, new BiFunction<Integer, Object, Object>() { @Override public Object apply(Integer a, Object b) { return null; } }).blockingGet(); }
@Test(expected = NullPointerException.class) public void reduceSeedFunctionReturnsNull() { just1.reduce(1, new BiFunction<Integer, Integer, Integer>() { @Override public Integer apply(Integer a, Integer b) { return null; } }).blockingGet(); }
@Test public void testListWithBlockingFirst() { Observable<String> o = Observable.fromIterable(Arrays.asList("one", "two", "three")); List<String> actual = o.toList().blockingGet(); Assert.assertEquals(Arrays.asList("one", "two", "three"), actual); }
@Test public void testListWithBlockingFirst() { Flowable<String> o = Flowable.fromIterable(Arrays.asList("one", "two", "three")); List<String> actual = toList(o).blockingGet(); Assert.assertEquals(Arrays.asList("one", "two", "three"), actual); } @Test
@Test public void testBackpressureWithInitialValue() throws InterruptedException { Observable<Integer> source = Observable.just(1, 2, 3, 4, 5, 6); Single<Integer> reduced = source.reduce(0, sum); Integer r = reduced.blockingGet(); assertEquals(21, r.intValue()); }
@Test(timeout = 5000) public void toSingleSupplierNormal() { Assert.assertEquals(1, normal.completable.toSingle(new Callable<Object>() { @Override public Object call() { return 1; } }).blockingGet()); }
@Test public void testFollowingFirst() { Observable<Integer> o = Observable.fromArray(1, 3, 5, 6); Single<Boolean> allOdd = o.all(new Predicate<Integer>() { @Override public boolean test(Integer i) { return i % 2 == 1; } }); assertFalse(allOdd.blockingGet()); } @Test(timeout = 5000)
@Test public void testWithFollowingFirst() { Observable<Integer> o = Observable.fromArray(1, 3, 5, 6); Single<Boolean> anyEven = o.any(new Predicate<Integer>() { @Override public boolean test(Integer i) { return i % 2 == 0; } }); assertTrue(anyEven.blockingGet()); } @Test(timeout = 5000)
@Test public void fromIterable() { ArrayList<String> items = new ArrayList<String>(); items.add("one"); items.add("two"); items.add("three"); assertEquals((Long)3L, Observable.fromIterable(items).count().blockingGet()); assertEquals("two", Observable.fromIterable(items).skip(1).take(1).blockingSingle()); assertEquals("three", Observable.fromIterable(items).takeLast(1).blockingSingle()); }
@Test public void testMergeCovariance3() { Observable<Movie> o1 = Observable.just(new HorrorMovie(), new Movie()); Observable<Media> o2 = Observable.just(new Media(), new HorrorMovie()); List<Media> values = Observable.merge(o1, o2).toList().blockingGet(); assertTrue(values.get(0) instanceof HorrorMovie); assertTrue(values.get(1) instanceof Movie); assertTrue(values.get(2) != null); assertTrue(values.get(3) instanceof HorrorMovie); }
@Test public void testMergeCovariance() { Observable<Media> o1 = Observable.<Media> just(new HorrorMovie(), new Movie()); Observable<Media> o2 = Observable.just(new Media(), new HorrorMovie()); Observable<Observable<Media>> os = Observable.just(o1, o2); List<Media> values = Observable.merge(os).toList().blockingGet(); assertEquals(4, values.size()); }
@Test public void testMergeCovariance2() { Observable<Media> o1 = Observable.just(new HorrorMovie(), new Movie(), new Media()); Observable<Media> o2 = Observable.just(new Media(), new HorrorMovie()); Observable<Observable<Media>> os = Observable.just(o1, o2); List<Media> values = Observable.merge(os).toList().blockingGet(); assertEquals(5, values.size()); }
@Test public void fromArray() { String[] items = new String[] { "one", "two", "three" }; assertEquals((Long)3L, Observable.fromArray(items).count().blockingGet()); assertEquals("two", Observable.fromArray(items).skip(1).take(1).blockingSingle()); assertEquals("three", Observable.fromArray(items).takeLast(1).blockingSingle()); }