public async Task WhenCatchTest() { var apiTask = new NotImplementedApiTask <string>(); var result = await apiTask.Handle().WhenCatch <NotImplementedException>(() => "abc"); Assert.True(result == "abc"); result = await apiTask.Handle().WhenCatch <Exception>((ex) => "xyz"); Assert.True(result == "xyz"); await Assert.ThrowsAsync <NotImplementedException>(async() => await apiTask.Handle().WhenCatch <NotSupportedException>(() => "xyz")); }
public async Task WhenCatchAsyncTest() { var apiTask = new NotImplementedApiTask <string>(); await Assert.ThrowsAsync <ApiRetryException>(async() => await apiTask.Retry(3).WhenCatchAsync <NotImplementedException>(async ex => await Task.CompletedTask)); }