2016-10-06 176 views
0

注意,我在做類似的東西,以https://stackoverflow.com/a/39735529/891242如何測試switchmap中的訂閱/取消訂閱?

.switchMap(flag -> flag ? processes : Observable.empty()) 

其中processesObservable<Void>

有沒有什麼辦法來測試processes observable是訂閱還是空訂閱?

+2

doOnSubscribe/doOnUnsubscribe – akarnokd

+0

@akarnokd啊,希望能以某種方式成爲一種不會污染產品代碼的方式,使用測試代碼 – ZakTaccardi

+0

狀態窺視操作員不僅僅用於測試,而且還有沿着流的副作用。 – akarnokd

回答

1

我露出一個RxRelay(學科)的基礎上,@akarnokd

.doOnSubscribe { relay.call(true) } 
.doOnUnsubscribe { relay.call(false) } 
-1

您還可以使用RxJavaHooks類設置掛鉤你想要的事件,並測試這些電話的諮詢。

+0

你有足夠的代表知道這不是一個高質量的答案。你需要展示'RJavaHooks'如何解決這個問題。 – Enigmativity