Я пытаюсь создать универсальный построитель тестов для генерации объектов, который я хочу использовать в тестах.Одна из вещей, которые я хочу создать - это импровизированные реализации интерфейсов.Я хочу, чтобы эти Mocks имели Strict mockbehaviour, и единственный способ установить это значение - параметр конструктора.Я использую этот код для создания макета моего интерфейса:
public object Build(Type type)
{
if (type.IsInterface)
{
List<object> mockParameters = new List<object>();
mockParameters.Add(MockBehavior.Strict);
Mock mock = (Mock)Activator.CreateInstance(typeof(Mock<>).MakeGenericType(type), mockParameters);
return mock.Object;
}
}
Это дает мне ArgumentException: аргументы конструктора не могут быть переданы для макетов интерфейса.Как я могу установить MockBehavior.Strict на макет, созданный с отражением?