android - 在 spyk 对象上 stub 方法会立即调用原始方法

标签 android kotlin mockk

例如方法

   class SomeClass() {
       fun login(listener: (Boolean) -> Unit ) {
            do some async logic and then call the listener with the result
      }
   }

   val spy = spyk(SomeClass())  {

          val completion = slot<(Boolean) -> Unit>()
         //this immediately calls the original login method
         every { login(capture(completion)) } answers {
              completion.captured.invoke(true)
         }
     }

试图 stub 登录方法会立即调用它。

你知道如何只 stub 而不调用它吗?

最佳答案

如果我们看一下 Mockk,也许 relaxed-mock ?

关于android - 在 spyk 对象上 stub 方法会立即调用原始方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62330246/

相关文章:

android - 为什么在 Android studio 3.3 的预览选项卡中显示模糊 xml View

Android:LoadStateAdapter 不在 recyclerview 网格布局中居中

kotlin - 模拟验证lambda参数

inline - mockk 支持在线暂停吗?

java - 当另一个服务正在运行时,该服务无法工作

android - 编译 AOSP 错误 : make: [out/build-aosp_arm. 忍者] 被杀死

android - 在 logcat 中抑制/混淆 URL

android - 如何更改自定义警报对话框的背景

android - Kotlin - Dagger 2 - 组件不是由 Android 中的 Dagger 2 生成的

android - 使用 MockK coVerify 时,未调用方法