Mock.Of <t>带有构造函数参数</t>

时间:2013-05-01 17:29:23

标签: c# .net-4.0 moq

我有一个具体的类,我正在使用Mock.Of进行模拟,但它没有默认的构造函数。有没有办法让这个工作无需接口或使用new Mock?前者在这个时候是矫枉过正,而后者则更加丑陋。我将尝试创建一个返回new Mock().Object的扩展方法,但我认为Mock.Get不会在该方案中起作用

1 个答案:

答案 0 :(得分:3)

事实证明,Moq会跟踪正常创建的对象(使用new并传回Object),以便可以在Mock.Get中使用它们。所以,这对我有用。如果有的话,我仍会采用内置的方式:

public static T MockOf<T>(params Object[] args) where T : class
{
  return new Mock<T>(args).Object;
}