io.reactivex.Flowable#never ( )源码实例Demo

下面列出了io.reactivex.Flowable#never ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

@Test
public void testWithNever() throws InterruptedException {
    Publisher<String> never = Flowable.never();
    T instance = converter().fromPublisher(never);
    CountDownLatch latch = new CountDownLatch(1);
    Future<?> future = Executors.newSingleThreadExecutor().submit(() -> {
        getOne(instance);
        latch.countDown();
    });
    boolean terminated = latch.await(10, TimeUnit.MILLISECONDS);
    future.cancel(true);
    assertThat(terminated).isFalse();
}
 
@Test
public void testInterleaveInfiniteStreamWithNever() {
    Flowable<Integer> a = Flowable.just(1).repeat();
    Flowable<Integer> b = Flowable.never();
    Flowables.mergeInterleaved(Flowable.just(a, b), 2, 1, true) //
            .test(3) //
            .assertValues(1, 1, 1) //
            .assertNotTerminated();
}
 
@Test
public void testInterleaveInfiniteStreamWithNeverReversed() {
    Flowable<Integer> a = Flowable.never();
    Flowable<Integer> b = Flowable.just(1).repeat();
    Flowables.mergeInterleaved(Flowable.just(a, b), 2, 1, true) //
            .test(3) //
            .assertValues(1, 1, 1) //
            .assertNotTerminated();
}