正如标题所说,我可以为一个Mock进行设置,然后以某种方式将它传输到同一类型的多个对象上吗?
假设我正在制作Mock<IProcessor>()
。我想创建多个这些模拟对象,但使用相同的设置(即,所有应该具有相同的期望,但它们有几个实例)。对我来说多次重复代码没有多大意义 - 我能以某种方式分享ISetup
吗?
答案 0 :(得分:2)
Moq本身并没有为此提供便利,AFAIK。
但您可以轻松地将设置代码移动到扩展方法:
public static void MySetup(this Mock<IProcessor> mock)
{
mock.<setup-whatever>
}
然后,在您需要的每个位置,您可以这样做:
...
var mock = new Mock<IProcessor>();
mock.MySetup();
...