Endecaのオブジェクトのほとんどまたはすべてには、内部コンストラクタがあります。私は、Endeca API に関する優れたテスト カバレッジが不足している優れたプロジェクトに取り組んでいます。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 を可能な限りテスト可能に保つための最良の方法ですか? または、これよりも優先される別の方法はありますか?