class MyClassWithVals(val a: String, val b: String, val c: String) {}
我可以用ScalaMock模拟这个:
val mock = stub[MyClassWithVals]
//when mock.a expect "The value of a"
我想要模仿它的原因,而不是仅仅创建一个填充了值的MyClassWithVals实例,是因为我有一个包含10个或更多参数的类,我只想定义其中一个或两个的行为以进行测试
如果没有使用ScalaMock,是否有另一个库直接使用,或者Scala类val可以做什么限制?
答案 0 :(得分:0)
我通过创建另一个扩展MyClassWithVals的仅测试类来解决这个问题:
class MyClassWithValsStub(
override val a: String = null,
override val b: String = null,
override val c: String = null
) extends MyClassWithVals(
a,
b,
c
) {}
使用这个额外的课程,我可以在我的测试用例中说:
var myStub = new MyClassWithValsStub(b = "Test B")