public async Task Delegates() { var called = 0; var handler = new DelegateExceptionHandler(async(_, __, ___) => called++); await handler.HandleAsync(null, null, null); Assert.Equal(1, called); }
public async Task KeepsParameters() { var expectedException = new MyBeautifulException(); var expectedMessage = new Message(); MessageHandler expectedHandler = msg => Task.CompletedTask; Exception actualException = null; object actualMessage = null; MessageHandler actualHandler = null; var handler = new DelegateExceptionHandler(async(ex, msg, h) => { actualException = ex; actualMessage = msg; actualHandler = h; }); await handler.HandleAsync(expectedException, expectedMessage, expectedHandler); Assert.Same(expectedException, actualException); Assert.Same(expectedMessage, actualMessage); Assert.Same(expectedHandler, actualHandler); }