Код: Выделить всё
// this is the usual pattern to call the service
_backgroundTasksService.RunBackgroundTask(x => x.Execute(id, name, color));
// and this is the service which stubs the calls for unit tests:
public class BackgroundTasksServiceStub : IBackgroundTasksService {
private readonly IServiceProvider _serviceProvider;
public BackgroundTasksServiceStub(IServiceProvider serviceProvider){
_serviceProvider = serviceProvider;
}
public void RunBackgroundTask(Expression methodCall){
var service = _serviceProvider.GetService();
var method = methodCall.Compile();
method(service);
}
}
Код: Выделить всё
async Task...Что мне следует сделать, чтобы эта служба-заглушка могла синхронно обрабатывать вызов асинхронных методов?
Кстати, я знайте, что на самом деле сервис работает нормально, так что выход есть! Только в модульных тестах плохо себя ведет. Это первый вопрос, на который мне ответили по этому поводу.
Подробнее здесь: https://stackoverflow.com/questions/786 ... when-the-f
Мобильная версия