私は Rx 1 から Rx 2 への移行の過程にあり、投稿を読んでいるときに突然、Singleが改造呼び出しに使用するオブザーバブルのタイプであることがわかりました。
そこで、試してみることにしました。改良呼び出しを Rx 2 に移行するときに、戻り値も に変更しましたSingle<whatever>
。
問題は、一部のテストで次のようなネットワーク サービスをモックすることです。
when(userService.logout()).thenReturn(Observable.empty())
ご覧のとおり、呼び出しを移行する前に、userService
モックに空のオブザーバブルを返すように指示して、ストリームを完成させていました。
Single
呼び出しの「バージョン」に移行する間Observable.empty()
、呼び出しは を返さず、 を返すため、使用できなくなりましObservable
たSingle
。
私は次のようなことをしてしまいました:
when(userService.logout()).thenReturn(
Single.fromObservable(Observable.<whatever>empty()))
私の質問は次のとおりです。
- これを行うより良い方法はありますか?
- 知っておくべき重要なことを見逃していますか?このようなものは、実際には期待どおりに動作しません。