質問するログイン新規登録

回答編集履歴

1

説明の改善

2020/04/13 11:35

投稿

kakajika
kakajika

スコア3133

answer CHANGED
@@ -5,4 +5,4 @@
5
5
  一応エラーの原因を解説しておくと、
6
6
 
7
7
  suspend関数は実際には引数の最後にContinuationを追加した通常の関数に変換されるのですが、このContinuationの値はコルーチン毎に別のものとなります。ご質問のコードの場合はautoLogin()の中でlaunchを呼んで新たなコルーチンを生成しているので、その中で呼び出されたgetUserProfile()にはlaunchの外とは別のContinuationが渡されるわけです。これにより引数のContinuationが一致しないよ!というエラーが出ています。
8
- これを避けるために、mockitoでは引数の最後にContinuationがある場合(つまりsuspend関数の場合)はそれを除外した引数を比較するように実装されています。
8
+ これを避けるために、mockitoでは引数の最後にContinuationがある関数(つまりsuspend関数)についてContinuationを除外した引数を比較するように実装されています。