単体テストの目的でImageSourceのモックを作成したいと思います。ImageSourceには内部コンストラクターがあり、モックを作成したり、継承されたクラスを作成したりすることはできません。ここでブラシについて説明されていますが、ImageSourceにも適合します:WPFでカスタムブラシを実装するにはどうすればよいですか?
そのための回避策はありますか?
単体テストの目的でImageSourceのモックを作成したいと思います。ImageSourceには内部コンストラクターがあり、モックを作成したり、継承されたクラスを作成したりすることはできません。ここでブラシについて説明されていますが、ImageSourceにも適合します:WPFでカスタムブラシを実装するにはどうすればよいですか?
そのための回避策はありますか?
私があなたの状況を正しく理解していれば、パブリック コンストラクターを持たないシール クラスのモックを作成する必要があります。
Moqではこれを行うことはできません。
回避策として、他の「モック/分離」フレームワーク、つまり、この機能をサポートする TypeMock を使用できます。また、Microsoft Moles を使用することもできます。
一方、ImageSource のモック化されたインスタンスをフレームワーク クラスに挿入しようとしている場合は、テストに問題がある可能性があります。
少なくとも、モックできる別のクラスでフレームワーク クラスを抽象化して、this がこのクラスと ImageSource を直接使用する必要をなくすことができます。