基于类型对象的模拟接口
本文关键字:对象 模拟 接口 类型 于类型 | 更新日期: 2023-09-27 17:58:02
我想模拟一些基于类型对象的接口。我需要这个来通过反射调用构造函数。看起来是这样的:
var type = typeof (T);
var constructors = type.GetConstructors();
var constructor = constructors.First();
var parameters = constructor.GetParameters();
var objects = new object[parameters.Count()];
//TODO create mock parameters and add to aobject array
constructor.Invoke(objects);
有可能取得那样的成就吗?有没有任何模拟框架为这一点提供了可行性?或者可以使用BCL来完成?
bump部分正确,但我想得到的是一个通过反射和解决方案进行的模拟:
public static object DynamicMock(Type type)
{
var mock = typeof(Mock<>).MakeGenericType(type).GetConstructor(Type.EmptyTypes).Invoke(new object[] { });
return mock.GetType().GetProperties().Single(f => f.Name == "Object" && f.PropertyType == type).GetValue(mock, new object[] {});
}