Я разместил это на форумах TypeMock, но слишком нетерпелив, чтобы ждать там ответа. Это очень n00b вопрос.
Я пытаюсь настроить поддельный IContainer. Вот что у меня есть:
var container = Isolate.Fake.Instance<IContainer>();
var program = Isolate.Fake.Instance<IProgram>();
Isolate.WhenCalled(() => container.Resolve<IProgram>()).WillReturn(program);
(IProgram
— это интерфейс в моем коде).
Когда я пытаюсь запустить этот код, я получаю исключение Autofac: «Запрошенная служба MyApp.IProgram не зарегистрирована».
Как это исключение могло быть выбрано? На самом деле я не вызываю container.Resolve(), верно? Я просто настраиваю его на возврат поддельной IProgram.
Несвязанная справочная информация: я пробую TypeMock, потому что Autofac широко использует методы расширения, а Moq не будет их издеваться.