當前位置: 首頁>>代碼示例>>Java>>正文


Java Subject.onComplete方法代碼示例

本文整理匯總了Java中rx.subjects.Subject.onComplete方法的典型用法代碼示例。如果您正苦於以下問題:Java Subject.onComplete方法的具體用法?Java Subject.onComplete怎麽用?Java Subject.onComplete使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在rx.subjects.Subject的用法示例。


在下文中一共展示了Subject.onComplete方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: testNextWithOnlyUsingNextMethod

import rx.subjects.Subject; //導入方法依賴的package包/類
@Test
public void testNextWithOnlyUsingNextMethod() {
    Subject<String, String> obs = PublishSubject.create();
    Iterator<String> it = next(obs).iterator();
    fireOnNextInNewThread(obs, "one");
    assertEquals("one", it.next());

    fireOnNextInNewThread(obs, "two");
    assertEquals("two", it.next());

    obs.onComplete();
    try {
        it.next();
        fail("At the end of an iterator should throw a NoSuchElementException");
    } catch (NoSuchElementException e) {
    }
}
 
開發者ID:akarnokd,項目名稱:RxJavaFlow,代碼行數:18,代碼來源:BlockingOperatorNextTest.java

示例2: testNextWithCallingHasNextMultipleTimes

import rx.subjects.Subject; //導入方法依賴的package包/類
@Test
public void testNextWithCallingHasNextMultipleTimes() {
    Subject<String, String> obs = PublishSubject.create();
    Iterator<String> it = next(obs).iterator();
    fireOnNextInNewThread(obs, "one");
    assertTrue(it.hasNext());
    assertTrue(it.hasNext());
    assertTrue(it.hasNext());
    assertTrue(it.hasNext());
    assertEquals("one", it.next());

    obs.onComplete();
    try {
        it.next();
        fail("At the end of an iterator should throw a NoSuchElementException");
    } catch (NoSuchElementException e) {
    }
}
 
開發者ID:akarnokd,項目名稱:RxJavaFlow,代碼行數:19,代碼來源:BlockingOperatorNextTest.java

示例3: testMulticast

import rx.subjects.Subject; //導入方法依賴的package包/類
@Test
public void testMulticast() {
    Subject<String, String> source = PublishSubject.create();

    ConnectableObservable<String> multicasted = new OperatorMulticast<String, String>(source, new PublishSubjectFactory());

    @SuppressWarnings("unchecked")
    Observer<String> observer = mock(Observer.class);
    multicasted.subscribe(observer);

    source.onNext("one");
    source.onNext("two");

    multicasted.connect();

    source.onNext("three");
    source.onNext("four");
    source.onComplete();

    verify(observer, never()).onNext("one");
    verify(observer, never()).onNext("two");
    verify(observer, times(1)).onNext("three");
    verify(observer, times(1)).onNext("four");
    verify(observer, times(1)).onComplete();

}
 
開發者ID:akarnokd,項目名稱:RxJavaFlow,代碼行數:27,代碼來源:OnSubscribeMulticastTest.java

示例4: testMulticastConnectTwice

import rx.subjects.Subject; //導入方法依賴的package包/類
@Test
public void testMulticastConnectTwice() {
    Subject<String, String> source = PublishSubject.create();

    ConnectableObservable<String> multicasted = new OperatorMulticast<String, String>(source, new PublishSubjectFactory());

    @SuppressWarnings("unchecked")
    Observer<String> observer = mock(Observer.class);
    multicasted.subscribe(observer);

    source.onNext("one");

    multicasted.connect();
    multicasted.connect();

    source.onNext("two");
    source.onComplete();

    verify(observer, never()).onNext("one");
    verify(observer, times(1)).onNext("two");
    verify(observer, times(1)).onComplete();

}
 
開發者ID:akarnokd,項目名稱:RxJavaFlow,代碼行數:24,代碼來源:OnSubscribeMulticastTest.java

示例5: testMostRecent

import rx.subjects.Subject; //導入方法依賴的package包/類
@Test
public void testMostRecent() {
    Subject<String, String> s = PublishSubject.create();

    Iterator<String> it = mostRecent(s, "default").iterator();

    assertTrue(it.hasNext());
    assertEquals("default", it.next());
    assertEquals("default", it.next());

    s.onNext("one");
    assertTrue(it.hasNext());
    assertEquals("one", it.next());
    assertEquals("one", it.next());

    s.onNext("two");
    assertTrue(it.hasNext());
    assertEquals("two", it.next());
    assertEquals("two", it.next());

    s.onComplete();
    assertFalse(it.hasNext());

}
 
開發者ID:akarnokd,項目名稱:RxJavaFlow,代碼行數:25,代碼來源:BlockingOperatorMostRecentTest.java

示例6: testMulticastDisconnect

import rx.subjects.Subject; //導入方法依賴的package包/類
@Test
public void testMulticastDisconnect() {
    Subject<String, String> source = PublishSubject.create();

    ConnectableObservable<String> multicasted = new OperatorMulticast<String, String>(source, new PublishSubjectFactory());

    @SuppressWarnings("unchecked")
    Observer<String> observer = mock(Observer.class);
    multicasted.subscribe(observer);

    source.onNext("one");

    Subscription connection = multicasted.connect();
    source.onNext("two");

    connection.unsubscribe();
    source.onNext("three");

    // subscribe again
    multicasted.subscribe(observer);
    // reconnect
    multicasted.connect();
    source.onNext("four");
    source.onComplete();

    verify(observer, never()).onNext("one");
    verify(observer, times(1)).onNext("two");
    verify(observer, never()).onNext("three");
    verify(observer, times(1)).onNext("four");
    verify(observer, times(1)).onComplete();

}
 
開發者ID:akarnokd,項目名稱:RxJavaFlow,代碼行數:33,代碼來源:OnSubscribeMulticastTest.java

示例7: testMulticastConnectTwice

import rx.subjects.Subject; //導入方法依賴的package包/類
@Test
public void testMulticastConnectTwice() {
    Subject<String, String> source = PublishSubject.create();

    ConnectableObservable<String> multicasted = new OperatorMulticast<String, String>(source, new PublishSubjectFactory());

    @SuppressWarnings("unchecked")
    Observer<String> observer = mock(Observer.class);
    multicasted.subscribe(observer);

    source.onNext("one");

    Subscription sub = multicasted.connect();
    Subscription sub2 = multicasted.connect();
    
    source.onNext("two");
    source.onComplete();

    verify(observer, never()).onNext("one");
    verify(observer, times(1)).onNext("two");
    verify(observer, times(1)).onComplete();
    
    assertEquals(sub, sub2);

}
 
開發者ID:akarnokd,項目名稱:RxJavaFlow,代碼行數:26,代碼來源:OperatorMulticastTest.java


注:本文中的rx.subjects.Subject.onComplete方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。