Большинство или все объекты Endeca имеют внутренние конструкторы. Я работаю над хорошим проектом, в котором отсутствует достаточное тестовое покрытие API Endeca. Существуют ли какие-либо хорошие стратегии для модульного тестирования взаимодействия с Endeca?
На данный момент лучшее, что у нас есть, это своего рода шаблон адаптера бедняка:
public class DimValue : IDimValue
{
public DimValue(Dimension dim, DimVal dimValue)
{
Dimension = dim;
Value = dimValue;
}
public virtual bool IsNavigable()
{
return Value.IsNavigable();
}
public virtual long Id()
{
return Value.Id;
}
// and so on...
}
Затем мы можем смоделировать наш собственный тип DimValue. Является ли это лучшим способом сделать их API как можно более тестируемым? Или есть другой метод, который предпочтительнее этого?