使用构造函数参数Mock.Of <T>

Jus*_*ony 6 c# moq .net-4.0

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

Jus*_*ony 6

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

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