Как сказать Machine.Fake, чтобы удовлетворить зависимость с заданным типом
Предположим, у меня есть контекст, настроенный так:
Establish context = () =>
{
...
IFileProcesser processer = new FileProcesser();
The<IFileProcesser>()
.WhenToldTo(x => x.Read(Param<Stream>.IsAnything))
.Return<Stream>(processer.Read);
...
};
Есть ли лучший способ сказать Machine.Fakes не подделывать IFileProcesser и использовать реализацию FileProcesser?
1 ответ
Решение
Вы можете использовать метод Configure для этого.
Establish context = () =>
{
Configure(x => x.For<IFileProcesser>().Use<FileProcesser>());
};
Если что-то регистрируется таким образом (есть несколько перегрузок Use), оно имеет приоритет над возможностями автоматического моделирования.
НТН