是否有任何库提供用于模拟具有特征的类的工具(两者都可以是有状态的)?
简化示例:
trait T {
var xx: List[Int] = List[Int]()
def t(x: Int) {
xx ::= x //throws NPE, xx == null, even after implicit initialization
}
}
class A extends T {
}
class Testable(a: A) {
def bar() {
a.t(2)
}
}
@Test def testFoo() {
val a: A = mock[A]
val testable = new Testable(a)
testable.bar()
verify(a).t(2)
}
最佳答案
Paul Butcher 一直在研究 Borachio,一个 Scala 模拟库。它支持对特征、类、函数和对象的模拟。请参阅以下博客了解更多信息:
http://www.paulbutcher.com/2011/02/announcing-borachio-native-scala-mocking/ http://www.paulbutcher.com/2011/07/power-mocking-in-scala-with-borachio/
关于scala - 具有特征的模拟类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7625902/