Мы используем Microsoft.Extensions.DependencyInjection в нашем приложении Xamarin Forms.
Страницы (Content Pages) зарегистрированы с временной областью и разрешены для использования в службе навигации.
Все работает хорошо, однако у нас есть проблема в модульном тестировании.
Из-за проблемы с FFImageLoading, страница не может быть решена в модульном тесте. Об этом сообщается в ссылке ниже (помечено как закрытое, но не работает).
https://github.com/luberda-molinet/FFImageLoading/issues/1143
В результате мы не можем протестировать любой метод View Model, который разрешает любую страницу.
То, что мы хотим в нашем модульном тестовом примере, - это макетировать все страницы с помощью фиктивной страницы, не использующей FFImageLoading, чтобы мы могли проверить логику модели представления (нас не волнует навигация в тестовом примере), то есть ниже. вызов должен вернуть макет страницы:
ServiceProvider.GetService<TService>()
Как зарегистрировать BaseContentPage в качестве типа реализации для всех страниц содержимого в тестовом проекте? Или же мы можем внедрить саму реализацию DI, чтобы фактический DI заменялся на фиктивный DI в тестовом проекте?