これを TypeMock フォーラムに投稿しましたが、応答を待つのが待ちきれません。これは非常に不自然な質問です。
偽の IContainer を設定しようとしています。ここに私が持っているものがあります:
var container = Isolate.Fake.Instance<IContainer>();
var program = Isolate.Fake.Instance<IProgram>();
Isolate.WhenCalled(() => container.Resolve<IProgram>()).WillReturn(program);
(IProgram
私のコードのインターフェースです)。
このコードを実行しようとすると、「要求されたサービス MyApp.IProgram が登録されていません」という Autofac 例外が発生します。
しかし、この例外はどのようにスローされるのでしょうか? 私は実際に container.Resolve() を呼び出しているわけではありませんよね? 偽の IProgram を返すように設定しているだけです。
無関係な背景情報: Autofac は拡張メソッドを広範囲に使用し、Moq はそれらをモックしないため、TypeMock を試しています。