public void TaskFromStateServer_TaskFromCanceled_NoErrors() { var logger = Substitute.For <ILogger>(); var state = new TaskFromStateServer.State(wb => { wb.Release(); return(Task.FromCanceled(new CancellationToken(true))); }); using (var waitBlock = new WaitBlock()) { var waitBlockLocal = new[] { waitBlock }; using (var context = ApplicationContext.Create(application => application .ConfigureForUnitTest() .WithWaitBlock(waitBlockLocal[0]) .UseLiteServer(liteServer => liteServer .AddServer <TaskFromStateServer>()) .Services(services => services .Advanced(advanced => advanced .Register(kernel => logger) .Register(kernel => state))))) { context.Execute(nameof(LiteServerHost)); } } }
public void TaskFromStateServer_ThrowsBeforeCreatingTask_EnsureIsLogged() { var exception = new InvalidOperationException("Some message"); var logger = Substitute.For <ILogger>(); var state = new TaskFromStateServer.State(wb => { wb.Release(); throw exception; }); using (var waitBlock = new WaitBlock()) { var waitBlockLocal = new[] { waitBlock }; using (var context = ApplicationContext.Create(application => application .ConfigureForUnitTest() .WithWaitBlock(waitBlockLocal[0]) .UseLiteServer(liteServer => liteServer .AddServer <TaskFromStateServer>()) .Services(services => services .Advanced(advanced => advanced .Register(kernel => logger) .Register(kernel => state))))) { context.Execute(nameof(LiteServerHost)); } } logger.Received(1).LogError(Arg.Is(exception)); }