カーネル モジュールのすべてのバインディングが正しいターゲットに設定されているかどうかを単体テストしたいと考えています。私が見つけた最も簡単な方法は、モジュールをロードしてカーネルを作成し、すべてのバインドされたタイプを取得して、それが正しいものかどうかを確認することでした:
this.kernel = new StandardKernel(new MainKernelModule());
Assert.That(this.kernel.Get<IMyClass>() is MyClass);
ただし、一部のクラスはサーバーへの接続に依存しているため、単体テストでは使用しないでください。そのため、単体テスト環境でカーネルがこのクラスを作成することはできません。
私の質問: IBinding のターゲット クラスを取得するにはどうすればよいですか?
var module = new MainKernelModule();
var kernel = new StandardKernel(module);
foreach (IBinding binding in module.Bindings)
{
// if (binding.BindingTarget is MyClass)
// Debug.WriteLine("Yeah");
}
誰かが私を助けてくれることを願っています。残念ながら、グーグルで何も見つかりませんでした。
前もって感謝します。