@Override public SingleSource<Object> apply(Observable<Object> o) throws Exception { return o.elementAt(0, 1); } });
@Override public MaybeSource<Object> apply(Observable<Object> o) throws Exception { return o.elementAt(0); } });
@Override public ObservableSource<Object> apply(Observable<Object> o) throws Exception { return o.elementAt(0).toObservable(); } });
@Test(expected = NullPointerException.class) public void elementAtNull() { just1.elementAt(1, null); }
@Test(expected = IndexOutOfBoundsException.class) public void testElementAtOrDefaultWithMinusIndex() { Observable.fromArray(1, 2).elementAt(-1, 0); }
@Test(expected = IndexOutOfBoundsException.class) public void testElementAtWithMinusIndex() { Observable.fromArray(1, 2).elementAt(-1); }
@Test public void testElementAt() { assertEquals(2, Observable.fromArray(1, 2).elementAt(1).blockingGet() .intValue()); }
@Test public void testElementAtOrDefaultWithIndexOutOfBounds() { assertEquals(0, Observable.fromArray(1, 2).elementAt(2, 0).blockingGet().intValue()); }
@Test public void testElementAtOrDefault() { assertEquals(2, Observable.fromArray(1, 2).elementAt(1, 0).blockingGet().intValue()); }
@Test public void testElementAtOrDefaultWithIndexOutOfBoundsObservable() { assertEquals(0, Observable.fromArray(1, 2).elementAt(2, 0).toObservable().blockingSingle().intValue()); }
@Test public void testElementAtObservable() { assertEquals(2, Observable.fromArray(1, 2).elementAt(1).toObservable().blockingSingle() .intValue()); }
@Test public void elementAtIndex0WithDefaultOnEmptySource() { Observable.empty() .elementAt(0, 5) .test() .assertResult(5); }
@Test public void testElementAtOrDefaultObservable() { assertEquals(2, Observable.fromArray(1, 2).elementAt(1, 0).toObservable().blockingSingle().intValue()); }
@Test public void testElementAtWithIndexOutOfBoundsObservable() { assertEquals(-99, Observable.fromArray(1, 2).elementAt(2).toObservable().blockingSingle(-99).intValue()); }
@Test public void testElementAtWithIndexOutOfBounds() { assertNull(Observable.fromArray(1, 2).elementAt(2).blockingGet()); }
@Test public void elementAtIndex0OnEmptySource() { Observable.empty() .elementAt(0) .test() .assertResult(); }
@Test public void elementAtIndex1OnEmptySource() { Observable.empty() .elementAt(1) .test() .assertResult(); }
@Test public void elementAtIndex1WithDefaultOnEmptySource() { Observable.empty() .elementAt(1, 10) .test() .assertResult(10); }
@Test public void elementAtIndex1WithDefaultOnEmptySourceObservable() { Observable.empty() .elementAt(1, 10) .toObservable() .test() .assertResult(10); }
@Test public void errorObservable() { Observable.error(new TestException()) .elementAt(1, 10) .toObservable() .test() .assertFailure(TestException.class); }