ScalaMock是否支持模拟(伴侣)对象和构造函数?

时间:2015-03-25 09:02:06

标签: scala unit-testing mocking scalamock

ScalaMock对模拟(伴侣)对象和构造函数的能力有些矛盾。页面ScalaMock step-by-step说明

它也可以嘲笑:

  • 类 *单身和伴侣对象(静态方法)
  • 对象创建(构造函数调用)
  • 具有私有构造函数的类
  • 最终类和最终方法的类
  • 运算符(带符号名称的方法)
  • 重载方法

另一方面,roadmap告诉我:

2016年第一季度 - ScalaMock 4 一旦scala.meta可用,我们就计划开始使用ScalaMock 4.如果scala.meta兑现了它的承诺,ScalaMock 4应该可以模拟任何特征,无论其类型有多复杂。

此外,我们希望它也会支持:

  • 改进语法:mockObject.expects.method(arguments)而不是:(mockObject.method _)expect(arguments)
  • 模拟对象创建(构造函数)
  • 模拟单身和伴侣对象(静态方法)
  • 使用最终方法或私有构造函数模拟最终类和类

那么,什么是正确的?当前版本(ScalaMock 3.2)是否能够模拟对象和构造函数?

1 个答案:

答案 0 :(得分:3)

经过一些更多的研究后,它看起来像是模拟对象和构造函数曾经被支持,但不在当前版本中。 Mocking of objects should be reintroduced with ScalaMock 4