mokito:模拟未直接绑定到类实例的方法

时间:2018-07-12 01:14:22

标签: java kotlin mockito guice

我有一个要测试的方法A的类myFun。类A获取类B的guice注入实例,而myFun使用B.getRecordsFromDatabase(groupId: String)检索组的记录。对于我的单元测试,我想模拟B的方法调用,使其返回10条随机记录。然后,我在myFun中有逻辑,它计算返回记录的数量。我试图模拟B的实例。但是,这不会使B.getRecordsFromDatabase()调用使用模拟实例的方法。

class A @Inject constructor(b: B, ...) {
  fun myFun(groupId: String) {
    val counts = b.getRecordsFromDatabase(groupId)
    // logic to check counts and throws exception if certain condition is met
  }
}

class B(...) {
  fun getRecordsFromDatabase(groupId: String): List<MyRecord> {
    // query database and return records
  }
}

我是否可以模拟B的guice注入实例的行为?

0 个答案:

没有答案