Я пытаюсь выполнить модульное тестирование некоторого кода, который использует библиотеку, внутренняя зависимость которой скрыта через модификатор класса «internal».
Во время настройки тестов я хотел бы иметь возможность создать экземпляр внутреннего класса.Обычно я хотел бы попробовать что-то вроде:
var type = typeof (FooBar);
var parameterlessCtor = (from c in type.GetConstructors(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance)
where c.GetParameters().Length == 0 select c).FirstOrDefault();
object instance;
if(parameterlessCtor != null)
{
instance = parameterlessCtor.Invoke(null);
}
Очевидная проблема с этим 'typeof (FooBar)' - я не могу сделать typeof для внутреннего типа.
Любые идеи, если явсе равно можно обойти это?
О, и я не могу перестроить сборку с внутренне видимым атрибутом ...