1
私は次のように見えるのテスト簡単なプレゼンター、でカバーしようとしています:ここkotlinテスト:比較障害
class Presenter{
fun getData(params:SomeParams) {
usecase.execute(getObservable, params)
}
private fun getObservable() = object :DisposableObserver<SomeData>{
override fun onComplete() {}
override fun onNext(t:SomeData) {}
override fun onError(e: Throwable) {}
}
}
である私の簡単なテスト:
@Test
fun getContacts() {
presenter.getData()
var observer = Mockito.mock(DisposableObserver::class.java) as DisposableObserver<SomeData>
verify(useCase).execute(observer, someParams)
}
と最後の行の後、私次のエラーを取得:
Argument(s) are different! Wanted:
useCase.execute(
[email protected],
kotlin.Unit
);
-> at com.test.execute(UseCaseObservable.kt:37)
Actual invocation has different arguments:
useCase.execute(
[email protected],
kotlin.Unit
);
-> at com.test.Presenter.getObservable(Presenter.kt:43)
ので、私はこのエラーを取得していますし、どのようにそれを回避し、テストしてこのメソッドをカバーするために何を?ありがとう!
この質問を見てください(特に、このような場合のためにMockitoのArgumentCaptorクラスを使用する方法https://stackoverflow.com/questions/47565887/how-引数をキャプチャする引数 - 関数を使用する - 引数キャプタ - モッキート/ 47566488#47566488 – SimY4